用于选择缩略图图片的图像指标是什么?
What image metrics to use for selecting pictures for thumbnails?
我想自动化创建视频缩略图/联系表的过程。它们通常是 m x n 矩阵的图片,例如 6x11 或 8x12 等。随机选择的图片有时质量很差:包含运动(图像模糊)、相机跨度(也模糊)、太暗或全黑或全白、没有细节等. 目前我使用 jpg 图像文件大小作为图像指标:更大的文件大小 -> 图片的更多细节。结合颜色数量(可以使用 ImageMagick "identify -format %k" 命令确定)。我通过除以图片组中的最大值将两者归一化为 0.0-1.0 间隔,然后计算以下指标:
gamma*number_of_colors^2+(1-gamma)*file_size^2
其中gamma是一个权重参数,可以在0.0-1.0的区间内。还有哪些其他方法、图像指标可用于此目的?
如果您对 sharpness/blurriness 感兴趣,您可以转至灰度和 运行 边缘检测(例如 Canny),这将为您提供一般黑色的图像,其中白色区域检测到尖锐的边缘.如果您取此类图像的平均亮度(或计算白色像素并除以以像素为单位的图像区域),则具有更高亮度的图像具有更锐利的边缘。
convert image.jpg -colorspace gray -canny 0x1+10%+30% -format "%[fx:mean]" info:
因此,举例来说...使用这张清晰的图像:
我测试清晰度:
convert sharp.jpg -colorspace gray -canny 0x1+10%+30% -format "%[fx:mean]" info:
0.00485202
现在,模糊版本:
我现在明白了:
convert blurred.jpg -colorspace gray -canny 0x1+10%+30% -format "%[fx:mean]" info:
0.00261855
我想自动化创建视频缩略图/联系表的过程。它们通常是 m x n 矩阵的图片,例如 6x11 或 8x12 等。随机选择的图片有时质量很差:包含运动(图像模糊)、相机跨度(也模糊)、太暗或全黑或全白、没有细节等. 目前我使用 jpg 图像文件大小作为图像指标:更大的文件大小 -> 图片的更多细节。结合颜色数量(可以使用 ImageMagick "identify -format %k" 命令确定)。我通过除以图片组中的最大值将两者归一化为 0.0-1.0 间隔,然后计算以下指标:
gamma*number_of_colors^2+(1-gamma)*file_size^2
其中gamma是一个权重参数,可以在0.0-1.0的区间内。还有哪些其他方法、图像指标可用于此目的?
如果您对 sharpness/blurriness 感兴趣,您可以转至灰度和 运行 边缘检测(例如 Canny),这将为您提供一般黑色的图像,其中白色区域检测到尖锐的边缘.如果您取此类图像的平均亮度(或计算白色像素并除以以像素为单位的图像区域),则具有更高亮度的图像具有更锐利的边缘。
convert image.jpg -colorspace gray -canny 0x1+10%+30% -format "%[fx:mean]" info:
因此,举例来说...使用这张清晰的图像:
我测试清晰度:
convert sharp.jpg -colorspace gray -canny 0x1+10%+30% -format "%[fx:mean]" info:
0.00485202
现在,模糊版本:
我现在明白了:
convert blurred.jpg -colorspace gray -canny 0x1+10%+30% -format "%[fx:mean]" info:
0.00261855