我在这里阅读了有关此主题的相关问题:How to detect subjective image quality
我想检测用户上传的图像是否可以以高百分比(例如,500%)放大,并且仍然是或良好的图像质量。我知道“良好的图像质量”是主观的,但就我的目的而言,我会说它意味着“图像是否像素化?”。我正试图找到如何做到这一点的方法?
是否有解决方案/库可以确定图像的bad pixelation?
答案 0 :(得分:4)
使用水平和垂直像素数。
只要图像的像素数多于您显示的像素数,就可以进行缩放。一旦有比图像像素更多的显示像素,就必须插入像素。插值越高,图像越模糊。
假设您有4000 x 3000像素的照片,并且显示的是640 x 480像素。
您可以水平放大至625%(4000/640)和垂直放大625%(3000/480)。较小的缩放数字为625%。舍入到均匀缩放数,此图片可以放大到600%而不会出现像素化。
现在,如果你愿意插入像素,你可以放大甚至高于600%。你能放大多高?这取决于你认为可接受的插值。
我的猜测会高出25%。对于此示例图片,您可以在图片过于模糊之前达到800%。
如果您想要安全起见,请将其保持在计算出的缩放尺寸以下。如果没有,请尽可能高,让用户确定有多高。