BM3D.jl - 一个用julia写的BM3D算法实现

大家好,我刚刚发布了自己的第一个julia包——BM3D.jl。BM3D是一个图像去噪算法,但网络上似乎没有能用的Julia实现,在github上能找到的只有这个 GitHub - rcrandall/BM3D.jl: An implementation of the BM3D denoising algorithm for Julia 但这个已经不能在目前的Julia稳定版上运行了,我把这个项目进行了修改,并进行了一些并行化处理,然后发布了这一个包,目的是为了熟悉 Julia。

我学习Julia不久,还有很多东西不熟悉,望大家多多包涵。

项目地址:

4 个赞

一个好的开始!我不是很了解Julia图像处理方面包的开发,不知道几个大项目比如Images.jl是否有类似的功能。

不错不错,扫了一眼,有几个建议

README 里的usage 尽量提供一个完整可运行的例子,我看你的代码库依赖了Images.jl,应该可以用个里面的image作为输入,Gary.(img) 是啥?另外noise_variance没有先定义。

上面提到了并行化,最好能提供一个实例测试下并行效率并把加速比贴出来。

有些地方的spawn 看着比较奇怪,不过我对这个算法不太了解,不确定是不是 best practice

据我所知,Images.jl中没有类似的功能。
在JuliaImages中有一个处理图像噪音的包

但也没有这个算法的实现。

Gary.(img) 是啥?

打完没检查了 :sweat:,是 Gray,把图片灰度化,因为目前只支持灰度图片。

README 里的usage 尽量提供一个完整可运行的例子

刚刚添加了一个

上面提到了并行化,最好能提供一个实例测试下并行效率并把加速比贴出来。

很好的建议,我现在电脑不在身边,可能需要过几天才能实验。

有些地方的spawn 看着比较奇怪,不过我对这个算法不太了解,不确定是不是 best practice

我很多地方都是凭感觉添加的,还没有经过实验。

这个包看起来还需要开发,各方面都不是很完整。或许以后可以考虑把你写的算法添加到这个包里,毕竟是挂在官方名下的,而且开发者也是中国人。

这个包看起来还需要开发,各方面都不是很完整。

目前还只是一个比较粗糙的实现,我打算先弄一个将就能用的版本,然后再在这个版本基础上进行改进和优化,可能需要一些时间。

或许以后可以考虑把你写的算法添加到这个包里

我可能没这个水平。这个算法是有MATLAB,C++和Python的实现,目前打算先与其他的实现保持一致。