bir*_*rdy 0 java image imagemagick image-processing
我在这里阅读了有关该主题的相关问题:如何检测主观图像质量
我想检测用户上传的图像是否可以放大到高%(例如500%)并且仍然具有良好的图像质量。我知道“良好的图像质量”是主观的,但就我的目的而言,我会说它的意思是“图像是否像素化?”。我正在尝试寻找如何做到这一点的方法?
是否有解决方案/库可以确定图像的不良像素化?
使用水平和垂直像素数。
只要图像的像素多于您显示的像素,您就可以缩放。一旦显示像素多于图像像素,就必须对像素进行插值。插值越高,图像越模糊。
假设您有一张 4000 x 3000 像素的图片,而您正在显示 640 x 480 像素。
您可以水平缩放至 625% (4000 / 640),垂直缩放至 625% (3000 / 480)。较小的缩放数字为 625%。舍入到偶数缩放数字后,这张图片可以缩放至 600%,而不会出现像素化。
现在,如果您愿意对像素进行插值,您甚至可以将缩放比例提高到 600% 以上。你能变焦到多高?这取决于您认为可接受的插值。
我的猜测会高 25%。对于此示例图片,您可以在图片变得太模糊之前将其调至 800%。
如果您想安全起见,请将其保持在计算的缩放尺寸以下。如果不是,则达到您想要的最高值,并让用户确定多高才算过高。