jiny2001 / dcscn-super-resolution

A tensorflow implementation of "Fast and Accurate Image Super Resolution by Deep CNN with Skip Connection and Network in Network", a deep learning based Single-Image Super-Resolution (SISR) model.
https://arxiv.org/abs/1707.05425
MIT License
706 stars 216 forks source link

c-DSDCN results is right? #108

Closed Lininggggggg closed 4 years ago

Lininggggggg commented 4 years ago

hello, i have a question about your table2 in paper, like the pic below image

and your github about this table is changed in c-DSDCN like this image

Could you tell me what happen about these? Thanks very much!

jiny2001 commented 4 years ago

OMG, this is obviously miss-copy. The PSNR numbers for c-DCSCN are exactly same as DCSCN.

I will check it soon and fix the numbers on the paper, however, I guess the numbers on github are correct. Sorry for the mess and thank you for your heads up!

Lininggggggg commented 4 years ago

OK, thanks! And i have two issues. 1) your Version2 have figure1 about model structure , and it points out the feature extraction network has 12 filter sets. but i found your paper point out the feature extraction network only has 7 filter sets. which is right?

2). and your Version2 have table1 about "Result of PSNR", and i want to know this table data is which model? DCSCN or C-DCSCN?

Could you tell me what happen about these? Thanks very much!

jiny2001 commented 4 years ago

Hi, sorry for late reply.

1) Does it say 12? I think it should say 11 filters which means the total number of layer of this model. "Feature extraction network only has 7 filter sets" this is also true. It means the first half of this model has 7 CNNs. Then it has 3 + 1 CNNs in the last half. Total is 11.

2) For the PSNR result, Table 2 mentions about normal DCSCN, not c-DCSCN.

Thx!

Lininggggggg commented 4 years ago

Hi, sorry for late reply.

  1. Does it say 12? I think it should say 11 filters which means the total number of layer of this model. "Feature extraction network only has 7 filter sets" this is also true. It means the first half of this model has 7 CNNs. Then it has 3 + 1 CNNs in the last half. Total is 11.
  2. For the PSNR result, Table 2 mentions about normal DCSCN, not c-DCSCN.

Thx!

hello, but i found the pic in the paper is like this, which points out the Feature extraction network just has 7 filter sets image

and i found your github is 12 filter sets in Feature extraction network, could you tell me the reason? image

emmm, ok ,maybe i know what's wrong~ the second pic is your ver2 model, right? but why the datas in these tables is wrong? the c-dsdcn of two tables use the same model?? if not, could you simply tell me which different of them? image

image

jiny2001 commented 4 years ago

Oh, OK. Sorry for the mess. I misunderstood you were checking the ver 2 (rev 2) on the arxiv.

Ver 1 on this github is for the paper published on arxiv. It has 7 filters for feature extraction at that time. You are seeing this model on the paper.

Later, I developed Ver 2 on this github which has more layers (12) for feature extraction and has Pixel Shuffler which is not on the paper. The PSNR result table on ver2 (master) branch will be the one from ver 2 model. And the result on ver1 page will be the one from ver 1.

I'll run the model and double check if my saying is correct... Please wait a sec.

Lininggggggg commented 4 years ago

ok, thank you very much!

jiny2001 commented 4 years ago

Hi Lininggggggg,

I re-run the evaluation code.

For Ver1, scale factor of 2: The numbers are same as I reported on v1 branch. However, the numbers on the paper were wrong so I will soon update the paper on arxiv. === Average [set5] PSNR:37.127544, SSIM:0.956794 === === Average [set14] PSNR:32.714365, SSIM:0.908936 === === Average [bsd100] PSNR:31.593507, SSIM:0.890458 ===

For Ver2, here is the result of c-DCSCN

Average [set5] PSNR:37.148139, SSIM:0.956461 Average [set14] PSNR:32.743996, SSIM:0.908801 Average [bsd100] PSNR:31.605624, SSIM:0.890511

x3 Average [set5] PSNR:33.087583, SSIM:0.913834 Average [set14] PSNR:29.466105, SSIM:0.824319 Average [bsd100] PSNR:28.516321, SSIM:0.788453

x4 [set5] PSNR:30.850592, SSIM:0.872100 [set14] PSNR:27.759466, SSIM:0.759218 [bsd100] PSNR:27.064831, SSIM:0.716712

I found c-DCSCN in the result table represents the model which has exactly same structure from c-DCSCN from Ver 1. But the model is re-trained with this ver 2 framework and the results are shown on this table. The performance gets slightly differ from the results in Ver1 branch. This would be because 1) tensorflow and bicubic-imaging utility gets updated and 2) training result gets differ by each experiments. However the the results are not so different so I feel it's understandable.

Summary: If you compare or refer the results on your paper, please use ver 1 result. (I will update the arxiv ASAP) Ver 2 result table on README is now updated. These results are latest. Please use this for your product, software or any experimental stuff.

Thx!

Lininggggggg commented 4 years ago

hello, thank you very much!! so excited for you reply!

and i still have trouble.(maybe the last time). the model of c-dsdcn don't use the self-ensemble*8, right? because if use, it will add the inference time and it will not be fast?

Summary: c-dsdcn model is same in ver 1 and ver 2; but DSDCN model is different because in ver 2, you add self-ensemble*8 and more fliters, channels and so on. the summary is right? thanks!!!

jiny2001 commented 4 years ago

Yep. c-DCSCN in ver 1 and 2 are the same (has same model structure).

Self ensemble is disabled when c-DCSCN is trained on ver 2 code. You can see the option, "--self_ensemble=1" (using only one default images set), in the example code of evaluating c-DCSCN. It means self ensemble is not used during training and evaluating for c-DCSCN. :)

Lininggggggg commented 4 years ago

OK,thanks very much!!!

---Original--- From: "Jin Yamanaka"<notifications@github.com> Date: Tue, Sep 8, 2020 12:03 PM To: "jiny2001/dcscn-super-resolution"<dcscn-super-resolution@noreply.github.com>; Cc: "Lininggggggg"<1296889948@qq.com>;"Author"<author@noreply.github.com>; Subject: Re: [jiny2001/dcscn-super-resolution] c-DSDCN results is right? (#108)

Yep. c-DCSCN in ver 1 and 2 are the same (has same model structure).

Self ensemble is disabled when c-DCSCN is trained on ver 2 code. You can see the option, "--self_ensemble=1" (using only one default images set), in the example code of evaluating c-DCSCN. It means self ensemble is not used during training and evaluating. :)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.