-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pybm3d not working properly on ubuntu #8
Comments
I just tested the example on a Linux machine with the same specifications and got a reasonable output. Is the direct result all zeros or only after saving the image? How is the input formatted (data type, normalized etc.)? |
@paggers Did you manage to get it running? |
I was running it locally on my Mac which worked fine, but I was unable to get good results and so I had to halt for a bit. On a side note, not too long ago I've received a beta version of bm3d implemented in python from Prof. Foi of Tampere University, one of the people from the original group which published BM3D. Just wanted to give you the heads up. If I get a chance I'll try to run it again on our linux machine, take care! |
@paggers I also encounter the same question, , Can you please give me the beta version of bm3d implemented in python from Prof. Foi ? Thanks a lot! |
@debinz Since I can not reproduce the Linux problems could you please give me some more info regarding your problem? In particular whether the direct result are all zeros or only after saving the image? How is the input formatted (data type, normalized etc.)? |
@timmeinhardt OK! I have downloaded the source code, and used "$python setup build", "$python setup install" to setup the pybm3d. After that, I wrote a test.py to denoise a png picture: the test.py is as follow:
Then I got the output picture: I once thought that parts of the codes that 'convert the input image' and 'convert the output image' in bm3d.pyx were wrong because I found the style handling image vector in 'bm3d.cpp' was chnls first, then height, and width last. These parts of codes in bm3d.pyx are as follow:
So I changed these codes, and resetup it.
Could you please give me some advice to deal with this issue? Thank you very much! |
same issue for me too: array([[[0, 0, 0],
|
Reporting same problem on remote machine with ubuntu 16.04, but on my local ubuntu 18.04 it works without problems. |
@timmeinhardt hi |
Hi, I'm using Ubuntu 18.04, Python 3.6 and I had the same issue. My code:
Output: [[[0 0 0] Has anyone solved the problem? |
The same problem on Linux Manjaro 18.0.4 and Python=3.6. Depending on the input data type, the output is either array of zeros or array with erronous values like in example shown by @leimingyu. |
I made some testing, and it seems that it's problem when python use mkl for numeric libraries instead of opeblas. When tested with opeblas it's worked fine on mine machine, but when tested with mkl the output was messed.
|
I think there is another issue with the order of the channels for color images. The only way I am able to get results that are similar between the python wrapper and stand alone c++ implementation is to loop over the color channel in the outer loop (which seems to be consistent with the color conversions in the cpp code for bd3m). i.e. I think the correct order should be
for both the input and output. I don't know if it is worth submitting a pull request for this as the repo seems to be pretty dead. Perhaps we should fork it instead? |
Working on a remote server running Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-79-generic x86_64) I am able to install pybm3d using pip, but once I run it on the example provided the result is all zeros (black image of same dimension).
I can provide more details about the system is required.
The text was updated successfully, but these errors were encountered: