使用opencv识别png格式图像的质量
Identifying the quality of an png format image with opencv
我需要根据质量分离图像。使用 OpenCV 获得图像质量的最佳方法是什么?
我知道 image.shape 给出了图像的高度和宽度,但在某些情况下,对于低质量图像,我们可以更改高度和宽度。
所以高度和宽度不能像我想的那样给出图像的质量。
图像的一个有用品质是它清晰而不模糊。确定这一点的一种简单方法是测量梯度的量。梯度中的能量多意味着边缘锐利,能量低意味着边缘模糊。
我在对此 的其中一个答案中进行了解释。问题。
使用 python opencv 它将是这样的:
import cv2 as cv
import numpy as np
img = cv.imread('dave.jpg',0)
laplacian = cv.Laplacian(img,cv.CV_64F)
gnorm = np.sqrt(laplacian**2)
sharpness = np.average(gnorm)
我需要根据质量分离图像。使用 OpenCV 获得图像质量的最佳方法是什么? 我知道 image.shape 给出了图像的高度和宽度,但在某些情况下,对于低质量图像,我们可以更改高度和宽度。 所以高度和宽度不能像我想的那样给出图像的质量。
图像的一个有用品质是它清晰而不模糊。确定这一点的一种简单方法是测量梯度的量。梯度中的能量多意味着边缘锐利,能量低意味着边缘模糊。
我在对此 的其中一个答案中进行了解释。问题。
使用 python opencv 它将是这样的:
import cv2 as cv
import numpy as np
img = cv.imread('dave.jpg',0)
laplacian = cv.Laplacian(img,cv.CV_64F)
gnorm = np.sqrt(laplacian**2)
sharpness = np.average(gnorm)