├── .idea
├── Imagefusion_deepfuse.iml
├── inspectionProfiles
│ └── profiles_settings.xml
├── misc.xml
├── modules.xml
├── vcs.xml
└── workspace.xml
├── README.md
├── __pycache__
├── decoder.cpython-36.pyc
├── deep_fuse_net.cpython-36.pyc
├── encoder.cpython-36.pyc
├── generate.cpython-36.pyc
├── ssim_loss_function.cpython-36.pyc
├── strategy.cpython-36.pyc
├── train_recons.cpython-36.pyc
└── utils.cpython-36.pyc
├── decoder.py
├── deep_fuse_net.py
├── encoder.py
├── figure
└── framework.png
├── generate.py
├── images
├── IV_images
│ ├── IR1.png
│ ├── IR10.png
│ ├── IR11.png
│ ├── IR12.png
│ ├── IR13.png
│ ├── IR14.png
│ ├── IR15.png
│ ├── IR16.png
│ ├── IR17.png
│ ├── IR18.png
│ ├── IR19.png
│ ├── IR2.png
│ ├── IR20.png
│ ├── IR21.png
│ ├── IR3.png
│ ├── IR4.png
│ ├── IR5.png
│ ├── IR6.png
│ ├── IR7.png
│ ├── IR8.png
│ ├── IR9.png
│ ├── VIS1.jpg
│ ├── VIS1.png
│ ├── VIS10.png
│ ├── VIS11.png
│ ├── VIS12.png
│ ├── VIS13.png
│ ├── VIS14.png
│ ├── VIS15.png
│ ├── VIS16.png
│ ├── VIS17.png
│ ├── VIS18.png
│ ├── VIS19.png
│ ├── VIS2.jpg
│ ├── VIS2.png
│ ├── VIS20.png
│ ├── VIS21.png
│ ├── VIS3.jpg
│ ├── VIS3.png
│ ├── VIS4.jpg
│ ├── VIS4.png
│ ├── VIS5.jpg
│ ├── VIS5.png
│ ├── VIS6.png
│ ├── VIS7.png
│ ├── VIS8.png
│ └── VIS9.png
└── multifocus_images
│ ├── image10_left.png
│ ├── image10_right.png
│ ├── image11_left.png
│ ├── image11_right.png
│ ├── image12_left.png
│ ├── image12_right.png
│ ├── image13_left.png
│ ├── image13_right.png
│ ├── image14_left.png
│ ├── image14_right.png
│ ├── image15_left.png
│ ├── image15_right.png
│ ├── image16_left.png
│ ├── image16_right.png
│ ├── image17_left.png
│ ├── image17_right.png
│ ├── image18_left.png
│ ├── image18_right.png
│ ├── image19_left.png
│ ├── image19_right.png
│ ├── image1_left.png
│ ├── image1_right.png
│ ├── image20_left.png
│ ├── image20_right.png
│ ├── image2_left.png
│ ├── image2_right.png
│ ├── image3_left.png
│ ├── image3_right.png
│ ├── image4_left.png
│ ├── image4_right.png
│ ├── image5_left.png
│ ├── image5_right.png
│ ├── image6_left.png
│ ├── image6_right.png
│ ├── image7_left.png
│ ├── image7_right.png
│ ├── image8_left.png
│ ├── image8_right.png
│ ├── image9_left.png
│ └── image9_right.png
├── log.txt
├── main.py
├── models
├── deepfuse_models
│ ├── checkpoint
│ ├── deepfuse_model.ckpt.data-00000-of-00001
│ ├── deepfuse_model.ckpt.index
│ ├── deepfuse_model.ckpt.meta
│ ├── deepfuse_model_batch_size_2.ckpt.data-00000-of-00001
│ ├── deepfuse_model_batch_size_2.ckpt.index
│ ├── deepfuse_model_batch_size_2.ckpt.meta
│ ├── deepfuse_model_bs2_epoch2_all.ckpt.data-00000-of-00001
│ ├── deepfuse_model_bs2_epoch2_all.ckpt.index
│ ├── deepfuse_model_bs2_epoch2_all.ckpt.meta
│ ├── deepfuse_model_bs2_epoch4_all.ckpt.data-00000-of-00001
│ ├── deepfuse_model_bs2_epoch4_all.ckpt.index
│ └── deepfuse_model_bs2_epoch4_all.ckpt.meta
└── test
│ ├── checkpoint
│ ├── deepfuse_model_bs2_epoch4_all.ckpt.data-00000-of-00001
│ ├── deepfuse_model_bs2_epoch4_all.ckpt.index
│ └── deepfuse_model_bs2_epoch4_all.ckpt.meta
├── outputs
├── fused
│ ├── fused10_deepfuse_bs2_epoch2.png
│ ├── fused11_deepfuse_bs2_epoch2.png
│ ├── fused12_deepfuse_bs2_epoch2.png
│ ├── fused13_deepfuse_bs2_epoch2.png
│ ├── fused14_deepfuse_bs2_epoch2.png
│ ├── fused15_deepfuse_bs2_epoch2.png
│ ├── fused16_deepfuse_bs2_epoch2.png
│ ├── fused17_deepfuse_bs2_epoch2.png
│ ├── fused18_deepfuse_bs2_epoch2.png
│ ├── fused19_deepfuse_bs2_epoch2.png
│ ├── fused1_deepfuse_bs2_epoch2.png
│ ├── fused20_deepfuse_bs2_epoch2.png
│ ├── fused21_deepfuse_bs2_epoch2.png
│ ├── fused2_deepfuse_bs2_epoch2.png
│ ├── fused3_deepfuse_bs2_epoch2.png
│ ├── fused4_deepfuse_bs2_epoch2.png
│ ├── fused5_deepfuse_bs2_epoch2.png
│ ├── fused6_deepfuse_bs2_epoch2.png
│ ├── fused7_deepfuse_bs2_epoch2.png
│ ├── fused8_deepfuse_bs2_epoch2.png
│ └── fused9_deepfuse_bs2_epoch2.png
├── fused_all
│ ├── fused10_deepfuse_bs2_epoch2.png
│ ├── fused11_deepfuse_bs2_epoch2.png
│ ├── fused12_deepfuse_bs2_epoch2.png
│ ├── fused13_deepfuse_bs2_epoch2.png
│ ├── fused14_deepfuse_bs2_epoch2.png
│ ├── fused15_deepfuse_bs2_epoch2.png
│ ├── fused16_deepfuse_bs2_epoch2.png
│ ├── fused17_deepfuse_bs2_epoch2.png
│ ├── fused18_deepfuse_bs2_epoch2.png
│ ├── fused19_deepfuse_bs2_epoch2.png
│ ├── fused1_deepfuse_bs2_epoch2.png
│ ├── fused20_deepfuse_bs2_epoch2.png
│ ├── fused21_deepfuse_bs2_epoch2.png
│ ├── fused2_deepfuse_bs2_epoch2.png
│ ├── fused3_deepfuse_bs2_epoch2.png
│ ├── fused4_deepfuse_bs2_epoch2.png
│ ├── fused5_deepfuse_bs2_epoch2.png
│ ├── fused6_deepfuse_bs2_epoch2.png
│ ├── fused7_deepfuse_bs2_epoch2.png
│ ├── fused8_deepfuse_bs2_epoch2.png
│ └── fused9_deepfuse_bs2_epoch2.png
├── fused_deepfuse_bs2_epoch2_focus
│ ├── fused10_deepfuse_bs2_epoch2.png
│ ├── fused11_deepfuse_bs2_epoch2.png
│ ├── fused12_deepfuse_bs2_epoch2.png
│ ├── fused13_deepfuse_bs2_epoch2.png
│ ├── fused14_deepfuse_bs2_epoch2.png
│ ├── fused15_deepfuse_bs2_epoch2.png
│ ├── fused16_deepfuse_bs2_epoch2.png
│ ├── fused17_deepfuse_bs2_epoch2.png
│ ├── fused18_deepfuse_bs2_epoch2.png
│ ├── fused19_deepfuse_bs2_epoch2.png
│ ├── fused1_deepfuse_bs2_epoch2.png
│ ├── fused20_deepfuse_bs2_epoch2.png
│ ├── fused2_deepfuse_bs2_epoch2.png
│ ├── fused3_deepfuse_bs2_epoch2.png
│ ├── fused4_deepfuse_bs2_epoch2.png
│ ├── fused5_deepfuse_bs2_epoch2.png
│ ├── fused6_deepfuse_bs2_epoch2.png
│ ├── fused7_deepfuse_bs2_epoch2.png
│ ├── fused8_deepfuse_bs2_epoch2.png
│ └── fused9_deepfuse_bs2_epoch2.png
└── fused_deepfuse_bs2_epoch4_all
│ ├── fused10_deepfuse_bs2_epoch2.png
│ ├── fused11_deepfuse_bs2_epoch2.png
│ ├── fused12_deepfuse_bs2_epoch2.png
│ ├── fused13_deepfuse_bs2_epoch2.png
│ ├── fused14_deepfuse_bs2_epoch2.png
│ ├── fused15_deepfuse_bs2_epoch2.png
│ ├── fused16_deepfuse_bs2_epoch2.png
│ ├── fused17_deepfuse_bs2_epoch2.png
│ ├── fused18_deepfuse_bs2_epoch2.png
│ ├── fused19_deepfuse_bs2_epoch2.png
│ ├── fused1_deepfuse_bs2_epoch2.png
│ ├── fused20_deepfuse_bs2_epoch2.png
│ ├── fused21_deepfuse_bs2_epoch2.png
│ ├── fused2_deepfuse_bs2_epoch2.png
│ ├── fused3_deepfuse_bs2_epoch2.png
│ ├── fused4_deepfuse_bs2_epoch2.png
│ ├── fused5_deepfuse_bs2_epoch2.png
│ ├── fused6_deepfuse_bs2_epoch2.png
│ ├── fused7_deepfuse_bs2_epoch2.png
│ ├── fused8_deepfuse_bs2_epoch2.png
│ └── fused9_deepfuse_bs2_epoch2.png
├── ssim_loss_function.py
├── strategy.py
├── train_recons.py
└── utils.py
/.idea/Imagefusion_deepfuse.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/.idea/inspectionProfiles/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.idea/workspace.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | true
110 | DEFINITION_ORDER
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
182 |
183 |
184 |
185 |
186 |
187 |
188 |
189 |
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
203 |
204 |
205 |
206 |
207 |
208 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
221 |
222 |
223 |
224 |
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
234 |
235 |
236 |
237 |
238 |
239 |
240 |
241 |
242 |
243 |
244 |
245 |
246 |
247 |
248 |
249 |
250 |
251 |
252 |
253 |
254 |
255 |
256 |
257 |
258 |
259 |
260 |
261 |
262 |
263 |
264 |
265 |
266 |
267 |
268 |
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 |
291 |
292 |
293 |
294 |
295 |
296 |
297 |
298 |
299 |
300 |
301 |
302 | project
303 |
304 |
305 |
306 |
307 |
308 |
309 |
310 |
311 |
312 |
313 |
314 |
315 |
316 |
317 |
318 |
319 |
320 |
321 |
322 |
323 |
324 |
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 |
341 |
342 |
343 |
344 |
345 |
346 |
347 |
348 |
349 |
350 |
351 |
352 |
353 |
354 |
355 |
356 |
357 |
358 |
359 |
360 |
361 |
362 |
363 |
364 |
365 |
366 |
367 |
368 |
369 | 1514813103773
370 |
371 |
372 | 1514813103773
373 |
374 |
375 | 1514813369036
376 |
377 |
378 |
379 | 1514813369036
380 |
381 |
382 | 1520949138895
383 |
384 |
385 |
386 | 1520949138895
387 |
388 |
389 | 1520949224031
390 |
391 |
392 |
393 | 1520949224032
394 |
395 |
396 | 1520949317709
397 |
398 |
399 |
400 | 1520949317709
401 |
402 |
403 |
404 |
405 |
406 |
407 |
408 |
409 |
410 |
411 |
412 |
413 |
414 |
415 |
416 |
417 |
418 |
419 |
420 |
421 |
422 |
423 |
424 |
425 |
426 |
427 |
428 |
429 |
430 |
431 |
432 |
433 |
434 |
435 |
436 |
437 |
438 |
439 |
440 |
441 |
442 |
443 |
444 |
445 |
446 |
447 |
448 |
449 |
450 |
451 |
452 |
453 |
454 |
455 |
456 |
457 |
458 |
459 |
460 |
461 |
462 |
463 |
464 |
465 |
466 |
467 |
468 |
469 |
470 |
471 |
472 |
473 |
474 |
475 |
476 |
477 |
478 |
479 |
480 |
481 |
482 |
483 |
484 |
485 |
486 |
487 |
488 |
489 |
490 |
491 |
492 |
493 |
494 |
495 |
496 |
497 |
498 |
499 |
500 |
501 |
502 |
503 |
504 |
505 |
506 |
507 |
508 |
509 |
510 |
511 |
512 |
513 |
514 |
515 |
516 |
517 |
518 |
519 |
520 |
521 |
522 |
523 |
524 |
525 |
526 |
527 |
528 |
529 |
530 |
531 |
532 |
533 |
534 |
535 |
536 |
537 |
538 |
539 |
540 |
541 |
542 |
543 |
544 |
545 |
546 |
547 |
548 |
549 |
550 |
551 |
552 |
553 |
554 |
555 |
556 |
557 |
558 |
559 |
560 |
561 |
562 |
563 |
564 |
565 |
566 |
567 |
568 |
569 |
570 |
571 |
572 |
573 |
574 |
575 |
576 |
577 |
578 |
579 |
580 |
581 |
582 |
583 |
584 |
585 |
586 |
587 |
588 |
589 |
590 |
591 |
592 |
593 |
594 |
595 |
596 |
597 |
598 |
599 |
600 |
601 |
602 |
603 |
604 |
605 |
606 |
607 |
608 |
609 |
610 |
611 |
612 |
613 |
614 |
615 |
616 |
617 |
618 |
619 |
620 |
621 |
622 |
623 |
624 |
625 |
626 |
627 |
628 |
629 |
630 |
631 |
632 |
633 |
634 |
635 |
636 |
637 |
638 |
639 |
640 |
641 |
642 |
643 |
644 |
645 |
646 |
647 |
648 |
649 |
650 |
651 |
652 |
653 |
654 |
655 |
656 |
657 |
658 |
659 |
660 |
661 |
662 |
663 |
664 |
665 |
666 |
667 |
668 |
669 |
670 |
671 |
672 |
673 |
674 |
675 |
676 |
677 |
678 |
679 |
680 |
681 |
682 |
683 |
684 |
685 |
686 |
687 |
688 |
689 |
690 |
691 |
692 |
693 |
694 |
695 |
696 |
697 |
698 |
699 |
700 |
701 |
702 |
703 |
704 |
705 |
706 |
707 |
708 |
709 |
710 |
711 |
712 |
713 |
714 |
715 |
716 |
717 |
718 |
719 |
720 |
721 |
722 |
723 |
724 |
725 |
726 |
727 |
728 |
729 |
730 |
731 |
732 |
733 |
734 |
735 |
736 |
737 |
738 |
739 |
740 |
741 |
742 |
743 |
744 |
745 |
746 |
747 |
748 |
749 |
750 |
751 |
752 |
753 |
754 |
755 |
756 |
757 |
758 |
759 |
760 |
761 |
762 |
763 |
764 |
765 |
766 |
767 |
768 |
769 |
770 |
771 |
772 |
773 |
774 |
775 |
776 |
777 |
778 |
779 |
780 |
781 |
782 |
783 |
784 |
785 |
786 |
787 |
788 |
789 |
790 |
791 |
792 |
793 |
794 |
795 |
796 |
797 |
798 |
799 |
800 |
801 |
802 |
803 |
804 |
805 |
806 |
807 |
808 |
809 |
810 |
811 |
812 |
813 |
814 |
815 |
816 |
817 |
818 |
819 |
820 |
821 |
822 |
823 |
824 |
825 |
826 |
827 |
828 |
829 |
830 |
831 |
832 |
833 |
834 |
835 |
836 |
837 |
838 |
839 |
840 |
841 |
842 |
843 |
844 |
845 |
846 |
847 |
848 |
849 |
850 |
851 |
852 |
853 |
854 |
855 |
856 |
857 |
858 |
859 |
860 |
861 |
862 |
863 |
864 |
865 |
866 |
867 |
868 |
869 |
870 |
871 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Deepfuse - Tensorflow
2 |
3 | Python>=3.0, TensorFlow=1.8.0
4 |
5 | The loss function and training strategy are differences whit DeepFuse. I will fix these in the near feature.
6 |
7 | This code is based on [K. Ram Prabhakar, V Sai Srikar, R. Venkatesh Babu. DeepFuse: A Deep Unsupervised Approach for Exposure Fusion with Extreme
8 | Exposure Image Pairs. ICCV2017, pp. 4714-4722](http://openaccess.thecvf.com/content_iccv_2017/html/Prabhakar_DeepFuse_A_Deep_ICCV_2017_paper.html)
9 |
10 | 
11 | In this code, for all conv layers, the filter size is 3\*3. And this code is not a complete version for DeepFuse, we just implement one channel fusion method which use CNN network.
12 |
13 | This code is not exactlly same with paper in ICCV2017. The aim of the training process is to reconstruct the input image by this network. The encoder(C1, C2) is used to extract image features and decoder(C3, C4, C5) is a reconstruct tool. The fusion strategy( Tensor addition) is only used in testing process.
14 |
15 | We train this network using [Microsoft COCO dataset](http://msvocds.blob.core.windows.net/coco2014/train2014.zip)(T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollar, and C. L. Zitnick. Microsoft coco: Common objects in context. In ECCV, 2014. 3-5.) as input images which contains 80000 images and all resize to 256×256 and RGB images are transformed to gray ones.
16 |
17 | # Citation
18 | ```
19 | @misc{li2017deepfuse,
20 | author = {Hui Li},
21 | title = {CODE: Image Fusion based on Deepfuse},
22 | year = {2018},
23 | publisher = {GitHub},
24 | journal = {GitHub repository},
25 | howpublished = {\url{https://github.com/hli1221/Imagefusion_deepfuse}}
26 | }
27 | ```
28 |
--------------------------------------------------------------------------------
/__pycache__/decoder.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/decoder.cpython-36.pyc
--------------------------------------------------------------------------------
/__pycache__/deep_fuse_net.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/deep_fuse_net.cpython-36.pyc
--------------------------------------------------------------------------------
/__pycache__/encoder.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/encoder.cpython-36.pyc
--------------------------------------------------------------------------------
/__pycache__/generate.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/generate.cpython-36.pyc
--------------------------------------------------------------------------------
/__pycache__/ssim_loss_function.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/ssim_loss_function.cpython-36.pyc
--------------------------------------------------------------------------------
/__pycache__/strategy.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/strategy.cpython-36.pyc
--------------------------------------------------------------------------------
/__pycache__/train_recons.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/train_recons.cpython-36.pyc
--------------------------------------------------------------------------------
/__pycache__/utils.cpython-36.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/__pycache__/utils.cpython-36.pyc
--------------------------------------------------------------------------------
/decoder.py:
--------------------------------------------------------------------------------
1 |
2 | import tensorflow as tf
3 | from tensorflow.python import pywrap_tensorflow
4 |
5 | WEIGHT_INIT_STDDEV = 0.1
6 |
7 |
8 | class Decoder(object):
9 |
10 | def __init__(self, model_pre_path):
11 | self.weight_vars = []
12 | self.model_pre_path = model_pre_path
13 |
14 | with tf.variable_scope('decoder'):
15 | self.weight_vars.append(self._create_variables(32, 32, 3, scope='conv2_1'))
16 | self.weight_vars.append(self._create_variables(32, 16, 3, scope='conv2_2'))
17 | self.weight_vars.append(self._create_variables(16, 1, 3, scope='conv2_3'))
18 |
19 | def _create_variables(self, input_filters, output_filters, kernel_size, scope):
20 |
21 | if self.model_pre_path:
22 | reader = pywrap_tensorflow.NewCheckpointReader(self.model_pre_path)
23 | with tf.variable_scope(scope):
24 | kernel = tf.Variable(reader.get_tensor('encoder/' + scope + '/kernel'), name='kernel')
25 | bias = tf.Variable(reader.get_tensor('encoder/' + scope + '/bias'), name='bias')
26 | else:
27 | with tf.variable_scope(scope):
28 | shape = [kernel_size, kernel_size, input_filters, output_filters]
29 | kernel = tf.Variable(tf.truncated_normal(shape, stddev=WEIGHT_INIT_STDDEV), name='kernel')
30 | bias = tf.Variable(tf.zeros([output_filters]), name='bias')
31 | return (kernel, bias)
32 |
33 | def decode(self, image):
34 | final_layer_idx = len(self.weight_vars) - 1
35 |
36 | out = image
37 | for i in range(len(self.weight_vars)):
38 | kernel, bias = self.weight_vars[i]
39 |
40 | if i == final_layer_idx:
41 | out = conv2d(out, kernel, bias, use_relu=False)
42 | else:
43 | out = conv2d(out, kernel, bias)
44 | # print('decoder ', i)
45 | # print('decoder out:', out.shape)
46 | return out
47 |
48 |
49 | def conv2d(x, kernel, bias, use_relu=True):
50 | # padding image with reflection mode
51 | x_padded = tf.pad(x, [[0, 0], [1, 1], [1, 1], [0, 0]], mode='REFLECT')
52 |
53 | # conv and add bias
54 | out = tf.nn.conv2d(x_padded, kernel, strides=[1, 1, 1, 1], padding='VALID')
55 | out = tf.nn.bias_add(out, bias)
56 |
57 | if use_relu:
58 | out = tf.nn.relu(out)
59 |
60 | return out
61 |
62 |
--------------------------------------------------------------------------------
/deep_fuse_net.py:
--------------------------------------------------------------------------------
1 | # Style Transfer Network
2 | # Encoder -> AdaIN -> Decoder
3 |
4 | import tensorflow as tf
5 |
6 | from encoder import Encoder
7 | from decoder import Decoder
8 | from strategy import Strategy
9 |
10 | class DeepFuseNet(object):
11 |
12 | def __init__(self, model_pre_path):
13 | self.encoder = Encoder(model_pre_path)
14 | self.decoder = Decoder(model_pre_path)
15 |
16 | def transform_addition(self, img1, img2):
17 | # encode image
18 | enc_1 = self.encoder.encode(img1)
19 | enc_2 = self.encoder.encode(img2)
20 | target_features = Strategy(enc_1, enc_2)
21 | # target_features = enc_c
22 | self.target_features = target_features
23 | print('target_features:', target_features.shape)
24 | # decode target features back to image
25 | generated_img = self.decoder.decode(target_features)
26 | return generated_img
27 |
28 | def transform_recons(self, img):
29 | # encode image
30 | enc = self.encoder.encode(img)
31 | target_features = enc
32 | self.target_features = target_features
33 | generated_img = self.decoder.decode(target_features)
34 | return generated_img
35 |
36 |
37 | def transform_encoder(self, img):
38 | # encode image
39 | enc = self.encoder.encode(img)
40 | return enc
41 |
42 | def transform_decoder(self, feature):
43 | # decode image
44 | generated_img = self.decoder.decode(feature)
45 | return generated_img
46 |
47 |
--------------------------------------------------------------------------------
/encoder.py:
--------------------------------------------------------------------------------
1 |
2 | import tensorflow as tf
3 | from tensorflow.python import pywrap_tensorflow
4 |
5 | WEIGHT_INIT_STDDEV = 0.1
6 |
7 |
8 | class Encoder(object):
9 | def __init__(self, model_pre_path):
10 | self.weight_vars = []
11 | self.model_pre_path = model_pre_path
12 |
13 | with tf.variable_scope('encoder'):
14 | self.weight_vars.append(self._create_variables(1, 16, 3, scope='conv1_1'))
15 | self.weight_vars.append(self._create_variables(16, 32, 3, scope='conv1_2'))
16 |
17 | def _create_variables(self, input_filters, output_filters, kernel_size, scope):
18 |
19 | if self.model_pre_path:
20 | reader = pywrap_tensorflow.NewCheckpointReader(self.model_pre_path)
21 | with tf.variable_scope(scope):
22 | kernel = tf.Variable(reader.get_tensor('encoder/' + scope + '/kernel'), name='kernel')
23 | bias = tf.Variable(reader.get_tensor('encoder/' + scope + '/bias'), name='bias')
24 | else:
25 | with tf.variable_scope(scope):
26 | shape = [kernel_size, kernel_size, input_filters, output_filters]
27 | kernel = tf.Variable(tf.truncated_normal(shape, stddev=WEIGHT_INIT_STDDEV), name='kernel')
28 | bias = tf.Variable(tf.zeros([output_filters]), name='bias')
29 | return (kernel, bias)
30 |
31 | def encode(self, image):
32 | final_layer_idx = len(self.weight_vars) - 1
33 |
34 | out = image
35 | for i in range(len(self.weight_vars)):
36 | kernel, bias = self.weight_vars[i]
37 |
38 | if i == final_layer_idx:
39 | out = conv2d(out, kernel, bias, use_relu=False)
40 | else:
41 | out = conv2d(out, kernel, bias)
42 | # print('encoder ', i)
43 | # print('encoder out:', out.shape)
44 | return out
45 |
46 |
47 | def conv2d(x, kernel, bias, use_relu=True):
48 | # padding image with reflection mode
49 | x_padded = tf.pad(x, [[0, 0], [1, 1], [1, 1], [0, 0]], mode='REFLECT')
50 |
51 | # conv and add bias
52 | out = tf.nn.conv2d(x_padded, kernel, strides=[1, 1, 1, 1], padding='VALID')
53 | out = tf.nn.bias_add(out, bias)
54 |
55 | if use_relu:
56 | out = tf.nn.relu(out)
57 |
58 | return out
59 |
60 |
--------------------------------------------------------------------------------
/figure/framework.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/figure/framework.png
--------------------------------------------------------------------------------
/generate.py:
--------------------------------------------------------------------------------
1 | # Use a trained DeepFuse Net to generate
2 |
3 | import tensorflow as tf
4 | import numpy as np
5 |
6 | from deep_fuse_net import DeepFuseNet
7 | from utils import get_images, save_images, get_train_images
8 |
9 | def generate(content_path, style_path, model_path, model_pre_path, index, output_path=None):
10 |
11 | outputs = _handler(content_path, style_path, model_path, model_pre_path, index, output_path=output_path)
12 | return list(outputs)
13 |
14 |
15 | def _handler(content_name, style_name, model_path, model_pre_path, index, output_path=None):
16 | content_path = content_name
17 | style_path = style_name
18 |
19 | content_img = get_train_images(content_path, flag=False)
20 | style_img = get_train_images(style_path, flag=False)
21 | dimension = content_img.shape
22 |
23 | content_img = content_img.reshape([1, dimension[0], dimension[1], dimension[2]])
24 | style_img = style_img.reshape([1, dimension[0], dimension[1], dimension[2]])
25 |
26 | content_img = np.transpose(content_img, (0, 2, 1, 3))
27 | style_img = np.transpose(style_img, (0, 2, 1, 3))
28 | print('content_img shape final:', content_img.shape)
29 |
30 | with tf.Graph().as_default(), tf.Session() as sess:
31 |
32 | # build the dataflow graph
33 | content = tf.placeholder(
34 | tf.float32, shape=content_img.shape, name='content')
35 | style = tf.placeholder(
36 | tf.float32, shape=style_img.shape, name='style')
37 |
38 | dfn = DeepFuseNet(model_pre_path)
39 |
40 | output_image = dfn.transform_addition(content,style)
41 | # output_image = dfn.transform_recons(style)
42 | # output_image = dfn.transform_recons(content)
43 |
44 | # restore the trained model and run the style transferring
45 | saver = tf.train.Saver()
46 | saver.restore(sess, model_path)
47 |
48 | output = sess.run(output_image, feed_dict={content: content_img, style: style_img})
49 | save_images(content_path, output, output_path,
50 | prefix='fused' + str(index), suffix='_deepfuse_bs2_epoch2')
51 |
52 | return output
53 |
--------------------------------------------------------------------------------
/images/IV_images/IR1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR1.png
--------------------------------------------------------------------------------
/images/IV_images/IR10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR10.png
--------------------------------------------------------------------------------
/images/IV_images/IR11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR11.png
--------------------------------------------------------------------------------
/images/IV_images/IR12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR12.png
--------------------------------------------------------------------------------
/images/IV_images/IR13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR13.png
--------------------------------------------------------------------------------
/images/IV_images/IR14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR14.png
--------------------------------------------------------------------------------
/images/IV_images/IR15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR15.png
--------------------------------------------------------------------------------
/images/IV_images/IR16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR16.png
--------------------------------------------------------------------------------
/images/IV_images/IR17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR17.png
--------------------------------------------------------------------------------
/images/IV_images/IR18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR18.png
--------------------------------------------------------------------------------
/images/IV_images/IR19.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR19.png
--------------------------------------------------------------------------------
/images/IV_images/IR2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR2.png
--------------------------------------------------------------------------------
/images/IV_images/IR20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR20.png
--------------------------------------------------------------------------------
/images/IV_images/IR21.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR21.png
--------------------------------------------------------------------------------
/images/IV_images/IR3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR3.png
--------------------------------------------------------------------------------
/images/IV_images/IR4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR4.png
--------------------------------------------------------------------------------
/images/IV_images/IR5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR5.png
--------------------------------------------------------------------------------
/images/IV_images/IR6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR6.png
--------------------------------------------------------------------------------
/images/IV_images/IR7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR7.png
--------------------------------------------------------------------------------
/images/IV_images/IR8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR8.png
--------------------------------------------------------------------------------
/images/IV_images/IR9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/IR9.png
--------------------------------------------------------------------------------
/images/IV_images/VIS1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS1.jpg
--------------------------------------------------------------------------------
/images/IV_images/VIS1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS1.png
--------------------------------------------------------------------------------
/images/IV_images/VIS10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS10.png
--------------------------------------------------------------------------------
/images/IV_images/VIS11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS11.png
--------------------------------------------------------------------------------
/images/IV_images/VIS12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS12.png
--------------------------------------------------------------------------------
/images/IV_images/VIS13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS13.png
--------------------------------------------------------------------------------
/images/IV_images/VIS14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS14.png
--------------------------------------------------------------------------------
/images/IV_images/VIS15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS15.png
--------------------------------------------------------------------------------
/images/IV_images/VIS16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS16.png
--------------------------------------------------------------------------------
/images/IV_images/VIS17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS17.png
--------------------------------------------------------------------------------
/images/IV_images/VIS18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS18.png
--------------------------------------------------------------------------------
/images/IV_images/VIS19.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS19.png
--------------------------------------------------------------------------------
/images/IV_images/VIS2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS2.jpg
--------------------------------------------------------------------------------
/images/IV_images/VIS2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS2.png
--------------------------------------------------------------------------------
/images/IV_images/VIS20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS20.png
--------------------------------------------------------------------------------
/images/IV_images/VIS21.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS21.png
--------------------------------------------------------------------------------
/images/IV_images/VIS3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS3.jpg
--------------------------------------------------------------------------------
/images/IV_images/VIS3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS3.png
--------------------------------------------------------------------------------
/images/IV_images/VIS4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS4.jpg
--------------------------------------------------------------------------------
/images/IV_images/VIS4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS4.png
--------------------------------------------------------------------------------
/images/IV_images/VIS5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS5.jpg
--------------------------------------------------------------------------------
/images/IV_images/VIS5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS5.png
--------------------------------------------------------------------------------
/images/IV_images/VIS6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS6.png
--------------------------------------------------------------------------------
/images/IV_images/VIS7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS7.png
--------------------------------------------------------------------------------
/images/IV_images/VIS8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS8.png
--------------------------------------------------------------------------------
/images/IV_images/VIS9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/IV_images/VIS9.png
--------------------------------------------------------------------------------
/images/multifocus_images/image10_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image10_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image10_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image10_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image11_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image11_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image11_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image11_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image12_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image12_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image12_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image12_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image13_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image13_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image13_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image13_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image14_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image14_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image14_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image14_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image15_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image15_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image15_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image15_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image16_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image16_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image16_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image16_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image17_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image17_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image17_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image17_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image18_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image18_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image18_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image18_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image19_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image19_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image19_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image19_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image1_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image1_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image1_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image1_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image20_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image20_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image20_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image20_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image2_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image2_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image2_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image2_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image3_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image3_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image3_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image3_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image4_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image4_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image4_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image4_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image5_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image5_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image5_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image5_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image6_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image6_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image6_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image6_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image7_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image7_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image7_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image7_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image8_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image8_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image8_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image8_right.png
--------------------------------------------------------------------------------
/images/multifocus_images/image9_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image9_left.png
--------------------------------------------------------------------------------
/images/multifocus_images/image9_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/images/multifocus_images/image9_right.png
--------------------------------------------------------------------------------
/log.txt:
--------------------------------------------------------------------------------
1 |
2 | Begin to train the network ...
3 |
4 | EPOCHES : 1
5 | BATCH_SIZE: 1
6 | Train images number 100.
7 |
8 | Train images samples 100.0.
9 |
10 | source : (1, 256, 256, 1)
11 | original: (1, 256, 256, 1)
12 | generate: (1, 256, 256, 1)
13 |
14 | Elapsed time for preprocessing before actually train the model: 0:00:02.273016
15 | Now begin to train the model...
16 |
17 | step: 100, total loss: 0.496588, elapsed time: 0:00:06.394891
18 | ssim_loss: 0.503412
19 | Done training! Elapsed time: 0:00:07.410595
20 | Model is saved to: ./models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt
21 |
22 | Successfully! Done training...
23 |
24 |
--------------------------------------------------------------------------------
/main.py:
--------------------------------------------------------------------------------
1 | # Demo - train the DeepFuse network & use it to generate an image
2 |
3 | from __future__ import print_function
4 |
5 | import time
6 |
7 | from train_recons import train_recons
8 | from generate import generate
9 | from utils import list_images
10 | import os
11 |
12 | # os.environ["CUDA_VISIBLE_DEVICES"] = "1"
13 |
14 | # IS_TRAINING = True
15 | IS_TRAINING = False
16 |
17 | BATCH_SIZE = 2
18 | EPOCHES = 4
19 |
20 | MODEL_SAVE_PATH = './models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt'
21 |
22 | # model_pre_path is just a pre-train model and not necessary. It is set as None when you want to train your own model.
23 | # model_pre_path = 'your own pre-train model'
24 | model_pre_path = None
25 |
26 | def main():
27 |
28 | if IS_TRAINING:
29 |
30 | original_imgs_path = list_images('D:/ImageDatabase/Image_fusion_MSCOCO/original/')
31 |
32 | print('\nBegin to train the network ...\n')
33 | train_recons(original_imgs_path, MODEL_SAVE_PATH, model_pre_path, EPOCHES, BATCH_SIZE, debug=True)
34 |
35 | print('\nSuccessfully! Done training...\n')
36 | else:
37 |
38 | output_save_path = 'outputs'
39 | # sourceA_name = 'image'
40 | # sourceB_name = 'image'
41 | sourceA_name = 'IR'
42 | sourceB_name = 'VIS'
43 | print('\nBegin to generate pictures ...\n')
44 |
45 | content_name = 'images/IV_images/' + sourceA_name
46 | style_name = 'images/IV_images/' + sourceB_name
47 |
48 | for i in range(1):
49 | index = i + 1
50 | content_path = content_name + str(index) + '.png'
51 | style_path = style_name + str(index) + '.png'
52 |
53 | # content_path = content_name + str(index) + '_left.png'
54 | # style_path = style_name + str(index) + '_right.png'
55 | generate(content_path, style_path, MODEL_SAVE_PATH, model_pre_path, index, output_path=output_save_path)
56 |
57 | # print('\ntype(generated_images):', type(generated_images))
58 | # print('\nlen(generated_images):', len(generated_images), '\n')
59 |
60 |
61 | if __name__ == '__main__':
62 | main()
63 |
64 |
--------------------------------------------------------------------------------
/models/deepfuse_models/checkpoint:
--------------------------------------------------------------------------------
1 | model_checkpoint_path: "deepfuse_model_bs2_epoch2_all.ckpt"
2 | all_model_checkpoint_paths: "deepfuse_model_bs2_epoch2_all.ckpt"
3 |
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model.ckpt.data-00000-of-00001:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model.ckpt.data-00000-of-00001
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model.ckpt.index:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model.ckpt.index
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model.ckpt.meta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model.ckpt.meta
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_batch_size_2.ckpt.data-00000-of-00001:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_batch_size_2.ckpt.data-00000-of-00001
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_batch_size_2.ckpt.index:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_batch_size_2.ckpt.index
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_batch_size_2.ckpt.meta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_batch_size_2.ckpt.meta
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_bs2_epoch2_all.ckpt.data-00000-of-00001:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_bs2_epoch2_all.ckpt.data-00000-of-00001
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_bs2_epoch2_all.ckpt.index:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_bs2_epoch2_all.ckpt.index
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_bs2_epoch2_all.ckpt.meta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_bs2_epoch2_all.ckpt.meta
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt.data-00000-of-00001:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt.data-00000-of-00001
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt.index:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt.index
--------------------------------------------------------------------------------
/models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt.meta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/deepfuse_models/deepfuse_model_bs2_epoch4_all.ckpt.meta
--------------------------------------------------------------------------------
/models/test/checkpoint:
--------------------------------------------------------------------------------
1 | model_checkpoint_path: "deepfuse_model_bs2_epoch2_all.ckpt"
2 | all_model_checkpoint_paths: "deepfuse_model_bs2_epoch2_all.ckpt"
3 |
--------------------------------------------------------------------------------
/models/test/deepfuse_model_bs2_epoch4_all.ckpt.data-00000-of-00001:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/test/deepfuse_model_bs2_epoch4_all.ckpt.data-00000-of-00001
--------------------------------------------------------------------------------
/models/test/deepfuse_model_bs2_epoch4_all.ckpt.index:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/test/deepfuse_model_bs2_epoch4_all.ckpt.index
--------------------------------------------------------------------------------
/models/test/deepfuse_model_bs2_epoch4_all.ckpt.meta:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/models/test/deepfuse_model_bs2_epoch4_all.ckpt.meta
--------------------------------------------------------------------------------
/outputs/fused/fused10_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused10_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused11_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused11_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused12_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused12_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused13_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused13_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused14_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused14_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused15_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused15_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused16_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused16_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused17_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused17_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused18_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused18_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused19_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused19_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused1_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused1_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused20_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused20_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused21_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused21_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused2_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused2_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused3_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused3_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused4_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused4_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused5_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused5_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused6_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused6_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused7_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused7_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused8_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused8_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused/fused9_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused/fused9_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused10_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused10_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused11_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused11_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused12_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused12_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused13_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused13_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused14_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused14_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused15_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused15_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused16_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused16_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused17_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused17_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused18_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused18_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused19_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused19_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused1_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused1_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused20_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused20_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused21_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused21_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused2_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused2_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused3_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused3_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused4_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused4_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused5_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused5_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused6_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused6_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused7_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused7_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused8_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused8_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_all/fused9_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_all/fused9_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused10_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused10_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused11_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused11_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused12_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused12_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused13_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused13_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused14_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused14_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused15_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused15_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused16_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused16_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused17_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused17_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused18_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused18_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused19_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused19_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused1_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused1_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused20_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused20_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused2_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused2_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused3_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused3_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused4_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused4_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused5_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused5_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused6_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused6_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused7_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused7_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused8_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused8_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch2_focus/fused9_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch2_focus/fused9_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused10_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused10_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused11_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused11_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused12_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused12_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused13_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused13_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused14_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused14_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused15_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused15_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused16_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused16_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused17_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused17_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused18_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused18_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused19_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused19_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused1_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused1_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused20_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused20_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused21_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused21_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused2_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused2_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused3_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused3_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused4_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused4_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused5_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused5_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused6_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused6_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused7_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused7_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused8_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused8_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/outputs/fused_deepfuse_bs2_epoch4_all/fused9_deepfuse_bs2_epoch2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hli1221/Imagefusion_deepfuse/19dd37082fa1efb454b275b8cede2be1aea4d0f6/outputs/fused_deepfuse_bs2_epoch4_all/fused9_deepfuse_bs2_epoch2.png
--------------------------------------------------------------------------------
/ssim_loss_function.py:
--------------------------------------------------------------------------------
1 | import tensorflow as tf
2 | import numpy as np
3 |
4 | def _tf_fspecial_gauss(size, sigma):
5 | """Function to mimic the 'fspecial' gaussian MATLAB function
6 | """
7 | x_data, y_data = np.mgrid[-size//2 + 1:size//2 + 1, -size//2 + 1:size//2 + 1]
8 |
9 | x_data = np.expand_dims(x_data, axis=-1)
10 | x_data = np.expand_dims(x_data, axis=-1)
11 |
12 | y_data = np.expand_dims(y_data, axis=-1)
13 | y_data = np.expand_dims(y_data, axis=-1)
14 |
15 | x = tf.constant(x_data, dtype=tf.float32)
16 | y = tf.constant(y_data, dtype=tf.float32)
17 |
18 | g = tf.exp(-((x**2 + y**2)/(2.0*sigma**2)))
19 | return g / tf.reduce_sum(g)
20 |
21 |
22 | def SSIM_LOSS(img1, img2, size=11, sigma=1.5):
23 | window = _tf_fspecial_gauss(size, sigma) # window shape [size, size]
24 | K1 = 0.01
25 | K2 = 0.03
26 | L = 1 # depth of image (255 in case the image has a differnt scale)
27 | C1 = (K1*L)**2
28 | C2 = (K2*L)**2
29 | mu1 = tf.nn.conv2d(img1, window, strides=[1,1,1,1], padding='VALID')
30 | mu2 = tf.nn.conv2d(img2, window, strides=[1,1,1,1],padding='VALID')
31 | mu1_sq = mu1*mu1
32 | mu2_sq = mu2*mu2
33 | mu1_mu2 = mu1*mu2
34 | sigma1_sq = tf.nn.conv2d(img1*img1, window, strides=[1,1,1,1],padding='VALID') - mu1_sq
35 | sigma2_sq = tf.nn.conv2d(img2*img2, window, strides=[1,1,1,1],padding='VALID') - mu2_sq
36 | sigma12 = tf.nn.conv2d(img1*img2, window, strides=[1,1,1,1],padding='VALID') - mu1_mu2
37 |
38 | value = (2.0*sigma12 + C2)/(sigma1_sq + sigma2_sq + C2)
39 | value = tf.reduce_mean(value)
40 | return value
--------------------------------------------------------------------------------
/strategy.py:
--------------------------------------------------------------------------------
1 | # Addition
2 |
3 | def Strategy(content, style):
4 | # return tf.reduce_sum(content, style)
5 | return content+style
6 |
7 |
--------------------------------------------------------------------------------
/train_recons.py:
--------------------------------------------------------------------------------
1 | # Train the DeepFuse Net
2 |
3 | from __future__ import print_function
4 |
5 | import scipy.io as scio
6 | import numpy as np
7 | import tensorflow as tf
8 | import matplotlib.pyplot as plt
9 |
10 | from ssim_loss_function import SSIM_LOSS
11 | from deep_fuse_net import DeepFuseNet
12 | from utils import get_train_images
13 |
14 | STYLE_LAYERS = ('relu1_1', 'relu2_1', 'relu3_1', 'relu4_1')
15 |
16 | TRAINING_IMAGE_SHAPE = (256, 256, 1) # (height, width, color_channels)
17 | TRAINING_IMAGE_SHAPE_OR = (256, 256, 1) # (height, width, color_channels)
18 |
19 | LEARNING_RATE = 1e-4
20 | EPSILON = 1e-5
21 |
22 | def train_recons(original_imgs_path, save_path, model_pre_path, EPOCHES_set, BATCH_SIZE, debug=False, logging_period=100):
23 | if debug:
24 | from datetime import datetime
25 | start_time = datetime.now()
26 | EPOCHS = EPOCHES_set
27 | print("EPOCHES : ", EPOCHS)
28 | print("BATCH_SIZE: ", BATCH_SIZE)
29 | num_imgs = len(original_imgs_path)
30 | # num_imgs = 100
31 | original_imgs_path = original_imgs_path[:num_imgs]
32 | mod = num_imgs % BATCH_SIZE
33 |
34 | print('Train images number %d.\n' % num_imgs)
35 | print('Train images samples %s.\n' % str(num_imgs / BATCH_SIZE))
36 |
37 | if mod > 0:
38 | print('Train set has been trimmed %d samples...\n' % mod)
39 | original_imgs_path = original_imgs_path[:-mod]
40 |
41 | # get the traing image shape
42 | HEIGHT, WIDTH, CHANNELS = TRAINING_IMAGE_SHAPE
43 | INPUT_SHAPE = (BATCH_SIZE, HEIGHT, WIDTH, CHANNELS)
44 |
45 | HEIGHT_OR, WIDTH_OR, CHANNELS_OR = TRAINING_IMAGE_SHAPE_OR
46 | INPUT_SHAPE_OR = (BATCH_SIZE, HEIGHT_OR, WIDTH_OR, CHANNELS_OR)
47 |
48 | # create the graph
49 | with tf.Graph().as_default(), tf.Session() as sess:
50 | original = tf.placeholder(tf.float32, shape=INPUT_SHAPE_OR, name='original')
51 | source = original
52 |
53 | print('source :', source.shape)
54 | print('original:', original.shape)
55 |
56 | # create the deepfuse net (encoder and decoder)
57 | dfn = DeepFuseNet(model_pre_path)
58 |
59 | generated_img = dfn.transform_recons(source)
60 |
61 | print('generate:', generated_img.shape)
62 |
63 | ssim_loss = SSIM_LOSS(original, generated_img)
64 |
65 | loss = 1-ssim_loss
66 | train_op = tf.train.AdamOptimizer(LEARNING_RATE).minimize(loss)
67 |
68 | sess.run(tf.global_variables_initializer())
69 |
70 | # saver = tf.train.Saver()
71 | saver = tf.train.Saver(keep_checkpoint_every_n_hours=1)
72 |
73 | # ** Start Training **
74 | step = 0
75 | count_loss = 0
76 | n_batches = int(len(original_imgs_path) // BATCH_SIZE)
77 |
78 | if debug:
79 | elapsed_time = datetime.now() - start_time
80 | print('\nElapsed time for preprocessing before actually train the model: %s' % elapsed_time)
81 | print('Now begin to train the model...\n')
82 | start_time = datetime.now()
83 |
84 | Loss_all = [i for i in range(EPOCHS * n_batches)]
85 | for epoch in range(EPOCHS):
86 |
87 | np.random.shuffle(original_imgs_path)
88 |
89 | for batch in range(n_batches):
90 | # retrive a batch of content and style images
91 |
92 | original_path = original_imgs_path[batch*BATCH_SIZE:(batch*BATCH_SIZE + BATCH_SIZE)]
93 | original_batch = get_train_images(original_path, crop_height=HEIGHT, crop_width=WIDTH, flag=False)
94 | original_batch = original_batch.reshape([BATCH_SIZE, 256, 256, 1])
95 |
96 | # print('original_batch shape final:', original_batch.shape)
97 |
98 | # run the training step
99 | sess.run(train_op, feed_dict={original: original_batch})
100 | step += 1
101 | # if step % 1000 == 0:
102 | # saver.save(sess, save_path, global_step=step)
103 | if debug:
104 | is_last_step = (epoch == EPOCHS - 1) and (batch == n_batches - 1)
105 |
106 | if is_last_step or step % logging_period == 0:
107 | elapsed_time = datetime.now() - start_time
108 | _ssim_loss, _loss = sess.run([ssim_loss, loss], feed_dict={original: original_batch})
109 | Loss_all[count_loss] = _loss
110 | count_loss += 1
111 | print('Deep fuse==>>step: %d, total loss: %s, elapsed time: %s' % (step, _loss, elapsed_time))
112 | print('ssim_loss: %s ' % (_ssim_loss))
113 |
114 | # ** Done Training & Save the model **
115 | saver.save(sess, save_path)
116 |
117 | loss_data = Loss_all[:count_loss]
118 | scio.savemat('D:/project/GitHub/ImageFusion/Imagefusion_deepfuse/DeepFuseLossData.mat', {'loss': loss_data})
119 |
120 | # iter_index = [i for i in range(count_loss)]
121 | # plt.plot(iter_index, Loss_all[:count_loss])
122 | # plt.show()
123 |
124 | if debug:
125 | elapsed_time = datetime.now() - start_time
126 | print('Done training! Elapsed time: %s' % elapsed_time)
127 | print('Model is saved to: %s' % save_path)
128 |
129 |
--------------------------------------------------------------------------------
/utils.py:
--------------------------------------------------------------------------------
1 | # Utility
2 |
3 | import numpy as np
4 |
5 | from os import listdir, mkdir, sep
6 | from os.path import join, exists, splitext
7 | from scipy.misc import imread, imsave, imresize
8 | import skimage
9 | import skimage.io
10 | import skimage.transform
11 | import tensorflow as tf
12 | from PIL import Image
13 | from functools import reduce
14 |
15 | def list_images(directory):
16 | images = []
17 | for file in listdir(directory):
18 | name = file.lower()
19 | if name.endswith('.png'):
20 | images.append(join(directory, file))
21 | elif name.endswith('.jpg'):
22 | images.append(join(directory, file))
23 | elif name.endswith('.jpeg'):
24 | images.append(join(directory, file))
25 | return images
26 |
27 |
28 | def get_train_images(paths, resize_len=512, crop_height=256, crop_width=256, flag = True):
29 | if isinstance(paths, str):
30 | paths = [paths]
31 |
32 | images = []
33 | ny = 0
34 | nx = 0
35 | for path in paths:
36 | image = imread(path, mode='L')
37 |
38 | if flag:
39 | image = np.stack(image, axis=0)
40 | image = np.stack((image, image, image), axis=-1)
41 | else:
42 | image = np.stack(image, axis=0)
43 | image = np.stack(image, axis=-1)
44 |
45 | images.append(image)
46 | images = np.stack(images, axis=-1)
47 |
48 | return images
49 |
50 |
51 | def get_images(paths, height=None, width=None):
52 | if isinstance(paths, str):
53 | paths = [paths]
54 |
55 | images = []
56 | for path in paths:
57 | image = imread(path, mode='RGB')
58 |
59 | if height is not None and width is not None:
60 | image = imresize(image, [height, width], interp='nearest')
61 |
62 | images.append(image)
63 |
64 | images = np.stack(images, axis=0)
65 | print('images shape gen:', images.shape)
66 | return images
67 |
68 |
69 | def save_images(paths, datas, save_path, prefix=None, suffix=None):
70 | if isinstance(paths, str):
71 | paths = [paths]
72 |
73 | assert(len(paths) == len(datas))
74 |
75 | if not exists(save_path):
76 | mkdir(save_path)
77 |
78 | if prefix is None:
79 | prefix = ''
80 | if suffix is None:
81 | suffix = ''
82 |
83 | for i, path in enumerate(paths):
84 | data = datas[i]
85 | # print('data ==>>\n', data)
86 | data = data.reshape([data.shape[0], data.shape[1]])
87 | # print('data reshape==>>\n', data)
88 |
89 | name, ext = splitext(path)
90 | name = name.split(sep)[-1]
91 |
92 | path = join(save_path, prefix + suffix + ext)
93 | print('data path==>>', path)
94 |
95 |
96 | # new_im = Image.fromarray(data)
97 | # new_im.show()
98 |
99 | imsave(path, data)
100 |
101 | def get_l2_norm_loss(diffs):
102 | shape = diffs.get_shape().as_list()
103 | size = reduce(lambda x, y: x * y, shape) ** 2
104 | sum_of_squared_diffs = tf.reduce_sum(tf.square(diffs))
105 | return sum_of_squared_diffs / size
--------------------------------------------------------------------------------