【发布时间】:2019-10-19 19:41:03
【问题描述】:
我想找到一些现有的代码/库,用于对普通图像进行清晰度/模糊度估计。 (首选 Python)稍后我需要比较不同算法的性能。
我有 10000 多张具有不同“质量”(锐度/模糊度)的 MRI 扫描图像。我需要编写代码来过滤具有特定“质量”(清晰度/模糊度)的图像,这取决于用户。因此,我正在尝试研究医学图像上的图像清晰度/模糊度估计。我的主管告诉我,互联网上有很多用于对正常图像进行清晰度/模糊度估计的现有代码(也许它是无参考的清晰度指标)。她让我搜索它们并首先在普通图像上尝试它们。然后尝试了解他们的算法。 我在互联网上搜索了这个,发现了一些相关的页面。但是,其中很多已经过时了。
例如: 在 Image sharpness metric 页面,
模糊检测的累积概率(CPBD)https://ivulab.asu.edu/software/quality/cpbd
似乎不再工作了。我猜原因是从新的“scipy”库中删除了“imread”函数。 (请看后面的代码和错误信息)我想我以后可以试试旧版本的“scipy”。但是,我想找到一些当前可用的关于图像清晰度/模糊度估计的代码/库。 另外,我的工作环境是 Windows 10 或 CentOS-7。
我已经用 CPBD 尝试了以下代码:
import sys, cpbd
from scipy import ndimage
input_image1 = ndimage.imread('D:\Work\Project\scripts\test_images\blur1.png', mode='L')
input_image2 = ndimage.imread('D:\Work\Project\scripts\test_images\clr1.png', mode='L')
print("blurry image sharpness:")
cpbd.compute(input_image1)
print("clear image sharpness:")
cpbd.compute(input_image2)
来自 Python 3.7 shell 的错误消息(在 Window 10 中运行):
Traceback (most recent call last):
File "D:\Work\Project\scripts\try_cpbd.py", line 1, in <module>
import sys, cpbd
File "D:\Program_Files_2\Python\lib\site-packages\cpbd\__init__.py", line 3, in <module>
from .compute import compute
File "D:\Program_Files_2\Python\lib\site-packages\cpbd\compute.py", line 14, in <module>
from scipy.misc import imread #Original: from scipy.ndimage import imread
ImportError: cannot import name 'imread' from 'scipy.misc' (D:\Program_Files_2\Python\lib\site-packages\scipy\misc\__init__.py)
【问题讨论】:
标签: python image algorithm metrics