C++デブルーンを実現
2002 ワード
このDeblurGANの生成ネットワークとスタイル変換の生成ネットワークの差は多くなく、残差ブロックが5から9に追加されたほか、グローバルにも残差構造である.
他は同じです.詳しくはお話ししませんが、スタイルチェンジ部分を参照してください.
主関数:
終わります.
ダウンロード:
win 32デモーションブラープログラム
DeblurGANによって改編された動きがぼやけているので、撮影されたぼやけた図を試してみると、少しはっきりするかもしれません.
https://download.csdn.net/download/juebai123/11055679
output = input + output
他は同じです.詳しくはお話ししませんが、スタイルチェンジ部分を参照してください.
主関数:
void DeblurGAN(char * savefilename,DeblurGAN & sr)
{
//
int wid=bmp.width;
int hei=bmp.height;
cout<
* ;
// ( , )
//
* di=( *)malloc(sizeof( ));
di->width=1;
di->height=1;
di->depth=1;
di->data=new float[1 ];
* ,* ;
= &rgb;
= di;
int pad;
//
//
#define (ConvX, )/* 、 */ \
\
=sr.ConvX;/* Conv2 */ \
if( -> != ->depth || ->width != wid || ->height != hei)\
Resize (* ,wid,hei, -> );\
pad= -> /2;\
vl_nnconv( , , , , ,pad,pad,pad,pad);\
vl_Norm( );\
vl_nnrelu( );/* Prelu*/\
\
std::swap ( , );\
cout<depth);
convfea5.data=new float[wid * hei * ->depth ];
* =&convfea5;
if( ->depth != ->depth || ->width != wid || ->height != hei)
Resize (* ,wid,hei, ->depth);
* 0=sr. ;
cout< ;
vl_nnconv( , , ,1,1,1,1,1,1);
vl_Norm( );
vl_nnrelu( );
++;
vl_nnconv( , , ,1,1,1,1,1,1);
vl_Norm( );
// //
( , );
0++;//
}
cout< != ->depth || ->width != wid || ->height != hei)\
Resize (* ,wid,hei, -> );\
vl_nnconvt( , , ,2,2, 1,1,1,1) ;\
vl_Norm( );\
vl_nnrelu( );/* Prelu*/\
\
std::swap ( , );\
cout< != ->depth || ->width != wid || ->height != hei)
Resize (* ,wid,hei, -> );
pad= -> /2;
vl_nnconv( , , ,1,1,pad,pad,pad,pad);
del (* );
vl_tanh( );//
cout<
終わります.
ダウンロード:
win 32デモーションブラープログラム
DeblurGANによって改編された動きがぼやけているので、撮影されたぼやけた図を試してみると、少しはっきりするかもしれません.
https://download.csdn.net/download/juebai123/11055679