rocketman768 / gpumatting

GPU methods for alpha matting, including cutting edge research algorithms by Philip G. Lee.
Other
12 stars 4 forks source link

runtime errors #1

Open antithing opened 6 years ago

antithing commented 6 years ago

Hi, and thank you for making this code available. I know you have not updated it for a while, but if you have a minute, could you help me to get it running?

It builds fine, but when i run it with:

matting.exe grad 1000 .\05.ppm .\05_scribs.pgm .\05_gt.pgm

I get: Error: read 61183/441600 pixels.

Is this code functional?

Also, is it possible to run it on cv::Mat images, instead of the ppm reader?

Thanks again.

rocketman768 commented 6 years ago

You're on Windows, which has absolutely bizarre behavior regarding file reading and writing. I'll bet $100 that if you change the fopen() calls to have argument "rb" instead of "r" in ppm.h, this fixes your problem.

If you have other problems, try getting hold of a Linux box if you can.

antithing commented 6 years ago

Ah, thank you! this has solved the issue, and the code will now run. However, i am getting strange results. From the files you include with the code, the ground truth looks like:

05_gt

When I run:

matting.exe grad 1000 .\05.ppm .\05_scribs.pgm .\05_gt.pgm

I get an alpha result like:

alpha

What could be going wrong here?

thank you again.

LuchenCatherine commented 4 years ago

Hi, thank you for making gpu acceleration. However, I got some problems. If you have spare time, can you help me with these problems? My configuration is ubuntu 16.04, cuda 10, gcc 5.4.0, cmake 3.5.1, which is not the same with your settings.

when It builds fine, but when i run it as your instruction: I get: Laplacian generation: 7.44e-01s 441600 -1602,-1601,-1600,-1599,-1598,-802,-801,-800,-799,-798,-2,-1,0,1,2,798,799,800,801,802,1598,1599,1600,1601,1602, Image Size: 800 x 552 Ground truth MSE: 4.707e-02 Error in `./bin/matting': free(): invalid size: 0x00007ffe0e7faf00 ======= Backtrace: ========= /lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f3a9a3397e5] /lib/x86_64-linux-gnu/libc.so.6(+0x8037a)[0x7f3a9a34237a] /lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f3a9a34653c] ./bin/matting(main+0x9d0)[0x418ccc] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f3a9a2e2830] ./bin/matting(_start+0x29)[0x40ad69] ======= Memory map: ======== 00400000-004a5000 r-xp 00000000 00:2f 231423731 /home2/chenlu/gpu3_project/gpu_matting/build/bin/matting 006a5000-006a8000 r--p 000a5000 00:2f 231423731 /home2/chenlu/gpu3_project/gpu_matting/build/bin/matting 006a8000-006a9000 rw-p 000a8000 00:2f 231423731 /home2/chenlu/gpu3_project/gpu_matting/build/bin/matting 006a9000-006aa000 rw-p 00000000 00:00 0 013c5000-022f6000 rw-p 00000000 00:00 0 [heap] 200000000-200200000 rw-s 00000000 00:06 653 /dev/nvidiactl 200200000-200400000 ---p 00000000 00:00 0 200400000-200600000 rw-s 00000000 00:06 653 /dev/nvidiactl 200600000-200800000 rw-s 00000000 00:06 654 /dev/nvidia0 200800000-204000000 rw-s 00000000 00:06 653 /dev/nvidiactl 204000000-204200000 rw-s 00000000 00:06 654 /dev/nvidia0 204200000-205200000 ---p 00000000 00:00 0 205200000-205400000 rw-s 00000000 00:06 653 /dev/nvidiactl 205400000-205600000 rw-s 00000000 00:06 653 /dev/nvidiactl 205600000-205800000 rw-s 205600000 00:06 975 /dev/nvidia-uvm 205800000-205a00000 ---p 00000000 00:00 0 205a00000-205c00000 rw-s 00000000 00:06 653 /dev/nvidiactl 205c00000-c00200000 ---p 00000000 00:00 0 10000000000-10004000000 ---p 00000000 00:00 0 7f3a60000000-7f3a68000000 ---p 00000000 00:00 0 7f3a68000000-7f3a68021000 rw-p 00000000 00:00 0 7f3a68021000-7f3a6c000000 ---p 00000000 00:00 0 7f3a6c000000-7f3a6c021000 rw-p 00000000 00:00 0 7f3a6c021000-7f3a70000000 ---p 00000000 00:00 0 7f3a70000000-7f3a80000000 ---p 00000000 00:00 0 7f3a84000000-7f3a86400000 ---p 00000000 00:00 0 7f3a86400000-7f3a86600000 rw-s 00000000 00:05 1081215486 /dev/zero (deleted) 7f3a86600000-7f3a86800000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a86800000-7f3a86a00000 rw-s 00000000 00:05 1081215487 /dev/zero (deleted) 7f3a86a00000-7f3a86e00000 ---p 00000000 00:00 0 7f3a86e00000-7f3a87000000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a87000000-7f3a87200000 ---p 00000000 00:00 0 7f3a87200000-7f3a87400000 rw-s 00000000 00:05 1081215489 /dev/zero (deleted) 7f3a87400000-7f3a874e7000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a874e7000-7f3a88000000 ---p 00000000 00:00 0 7f3a88000000-7f3a88021000 rw-p 00000000 00:00 0 7f3a88021000-7f3a8c000000 ---p 00000000 00:00 0 7f3a8d657000-7f3a8d857000 rw-s 00000000 00:05 1081215488 /dev/zero (deleted) 7f3a8d857000-7f3a8d858000 ---p 00000000 00:00 0 7f3a8d858000-7f3a8e058000 rw-p 00000000 00:00 0 7f3a8e058000-7f3a8e059000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e059000-7f3a8e05a000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e05a000-7f3a8e05b000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e05b000-7f3a8e05c000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e05c000-7f3a8e05d000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e05d000-7f3a8e05e000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e05e000-7f3a8e05f000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e05f000-7f3a8e060000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e060000-7f3a8e061000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e061000-7f3a8e062000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e062000-7f3a8e063000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e063000-7f3a8e064000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a8e064000-7f3a8e065000 ---p 00000000 00:00 0 7f3a8e065000-7f3a8e865000 rw-p 00000000 00:00 0 7f3a8e865000-7f3a8e866000 ---p 00000000 00:00 0 7f3a8e866000-7f3a8f066000 rw-p 00000000 00:00 0 7f3a8f066000-7f3a95066000 ---p 00000000 00:00 0 7f3a95066000-7f3a95076000 -w-s 00000000 00:06 964 /dev/nvidia9 7f3a95076000-7f3a95086000 -w-s 00000000 00:06 953 /dev/nvidia8 7f3a95086000-7f3a95096000 -w-s 00000000 00:06 942 /dev/nvidia7 7f3a95096000-7f3a950a6000 -w-s 00000000 00:06 931 /dev/nvidia6 7f3a950a6000-7f3a950b6000 -w-s 00000000 00:06 920 /dev/nvidia5 7f3a950b6000-7f3a950c6000 -w-s 00000000 00:06 909 /dev/nvidia4 7f3a950c6000-7f3a9510d000 r-xp 00000000 08:13 1580291 /usr/lib/x86_64-linux-gnu/libnvidia-fatbinaryloader.so.418.56 7f3a9510d000-7f3a9530d000 ---p 00047000 08:13 1580291 /usr/lib/x86_64-linux-gnu/libnvidia-fatbinaryloader.so.418.56 7f3a9530d000-7f3a9530f000 rw-p 00047000 08:13 1580291 /usr/lib/x86_64-linux-gnu/libnvidia-fatbinaryloader.so.418.56 7f3a9530f000-7f3a95314000 rw-p 00000000 00:00 0 7f3a95314000-7f3a960e7000 r-xp 00000000 08:13 1580286 /usr/lib/x86_64-linux-gnu/libcuda.so.418.56 7f3a960e7000-7f3a962e6000 ---p 00dd3000 08:13 1580286 /usr/lib/x86_64-linux-gnu/libcuda.so.418.56 7f3a962e6000-7f3a9645b000 rw-p 00dd2000 08:13 1580286 /usr/lib/x86_64-linux-gnu/libcuda.so.418.56 7f3a9645b000-7f3a9646b000 rw-p 00000000 00:00 0 7f3a98e88000-7f3a9a2c2000 rw-p 00000000 00:00 0 7f3a9a2c2000-7f3a9a482000 r-xp 00000000 08:13 5771574 /lib/x86_64-linux-gnu/libc-2.23.so 7f3a9a482000-7f3a9a682000 ---p 001c0000 08:13 5771574 /lib/x86_64-linux-gnu/libc-2.23.so 7f3a9a682000-7f3a9a686000 r--p 001c0000 08:13 5771574 /lib/x86_64-linux-gnu/libc-2.23.so 7f3a9a686000-7f3a9a688000 rw-p 001c4000 08:13 5771574 /lib/x86_64-linux-gnu/libc-2.23.so 7f3a9a688000-7f3a9a68c000 rw-p 00000000 00:00 0 7f3a9a68c000-7f3a9a6a2000 r-xp 00000000 08:13 5767698 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f3a9a6a2000-7f3a9a8a1000 ---p 00016000 08:13 5767698 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f3a9a8a1000-7f3a9a8a2000 rw-p 00015000 08:13 5767698 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f3a9a8a2000-7f3a9a9aa000 r-xp 00000000 08:13 5771577 /lib/x86_64-linux-gnu/libm-2.23.so 7f3a9a9aa000-7f3a9aba9000 ---p 00108000 08:13 5771577 /lib/x86_64-linux-gnu/libm-2.23.so 7f3a9aba9000-7f3a9abaa000 r--p 00107000 08:13 5771577 /lib/x86_64-linux-gnu/libm-2.23.so 7f3a9abaa000-7f3a9abab000 rw-p 00108000 08:13 5771577 /lib/x86_64-linux-gnu/libm-2.23.so 7f3a9abab000-7f3a9ad1d000 r-xp 00000000 08:13 1573221 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 7f3a9ad1d000-7f3a9af1d000 ---p 00172000 08:13 1573221 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 7f3a9af1d000-7f3a9af27000 r--p 00172000 08:13 1573221 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 7f3a9af27000-7f3a9af29000 rw-p 0017c000 08:13 1573221 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 7f3a9af29000-7f3a9af2d000 rw-p 00000000 00:00 0 7f3a9af2d000-7f3a9af34000 r-xp 00000000 08:13 5771557 /lib/x86_64-linux-gnu/librt-2.23.so 7f3a9af34000-7f3a9b133000 ---p 00007000 08:13 5771557 /lib/x86_64-linux-gnu/librt-2.23.so 7f3a9b133000-7f3a9b134000 r--p 00006000 08:13 5771557 /lib/x86_64-linux-gnu/librt-2.23.so 7f3a9b134000-7f3a9b135000 rw-p 00007000 08:13 5771557 /lib/x86_64-linux-gnu/librt-2.23.so 7f3a9b135000-7f3a9b138000 r-xp 00000000 08:13 5771559 /lib/x86_64-linux-gnu/libdl-2.23.so 7f3a9b138000-7f3a9b337000 ---p 00003000 08:13 5771559 /lib/x86_64-linux-gnu/libdl-2.23.so 7f3a9b337000-7f3a9b338000 r--p 00002000 08:13 5771559 /lib/x86_64-linux-gnu/libdl-2.23.so 7f3a9b338000-7f3a9b339000 rw-p 00003000 08:13 5771559 /lib/x86_64-linux-gnu/libdl-2.23.so 7f3a9b339000-7f3a9b351000 r-xp 00000000 08:13 5771561 /lib/x86_64-linux-gnu/libpthread-2.23.so 7f3a9b351000-7f3a9b550000 ---p 00018000 08:13 5771561 /lib/x86_64-linux-gnu/libpthread-2.23.so 7f3a9b550000-7f3a9b551000 r--p 00017000 08:13 5771561 /lib/x86_64-linux-gnu/libpthread-2.23.so 7f3a9b551000-7f3a9b552000 rw-p 00018000 08:13 5771561 /lib/x86_64-linux-gnu/libpthread-2.23.so 7f3a9b552000-7f3a9b556000 rw-p 00000000 00:00 0 7f3a9b556000-7f3a9b57c000 r-xp 00000000 08:13 5771560 /lib/x86_64-linux-gnu/ld-2.23.so 7f3a9b57c000-7f3a9b57d000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b57d000-7f3a9b57e000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b57e000-7f3a9b57f000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b57f000-7f3a9b580000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b580000-7f3a9b581000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b581000-7f3a9b582000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b582000-7f3a9b592000 -w-s 00000000 00:06 898 /dev/nvidia3 7f3a9b592000-7f3a9b5a2000 -w-s 00000000 00:06 887 /dev/nvidia2 7f3a9b5a2000-7f3a9b5b2000 -w-s 00000000 00:06 874 /dev/nvidia1 7f3a9b5b2000-7f3a9b769000 rw-p 00000000 00:00 0 7f3a9b769000-7f3a9b76a000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b76a000-7f3a9b76b000 rw-s 00000000 00:06 653 /dev/nvidiactl 7f3a9b76b000-7f3a9b77b000 -w-s 00000000 00:06 654 /dev/nvidia0 7f3a9b77b000-7f3a9b77c000 r--p 00025000 08:13 5771560 /lib/x86_64-linux-gnu/ld-2.23.so 7f3a9b77c000-7f3a9b77d000 rw-p 00026000 08:13 5771560 /lib/x86_64-linux-gnu/ld-2.23.so 7f3a9b77d000-7f3a9b77e000 rw-p 00000000 00:00 0 7ffe0e7db000-7ffe0e7fc000 rw-p 00000000 00:00 0 [stack] 7ffe0e7fc000-7ffe0e7fe000 r--p 00000000 00:00 0 [vvar] 7ffe0e7fe000-7ffe0e800000 r-xp 00000000 00:00 0 [vdso] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] Aborted (core dumped)