我正在尝试使用OpenCV调整一组图像的大小。分辨率是正确的,但图像质量下降了。然而,如果我通过苹果预览手动调整大小,则不会影响图像质量。我正在缩小所有这些图像,而不是放大它们。以下是两张比较质量的图片。请注意自行车的锯齿形辐条和锯齿形上管:
不好的调整大小:
好的调整大小:
以下是我的代码:
cv::Mat srcimg = cv::imread(src_filepath);
cv::Mat destimg = cv::imread(lowres_path);
cv::Size img_size = srcimg.size();
int img_width = img_size.width;
int img_height = img_size.height;
double percentage = 1000.0/(img_width);
double new_height = img_height * percentage;
cv::Size new_size = cv::Size(1000.0, new_height);
cv::resize(srcimg, destimg, new_size,0,0,CV_INTER_LANCZOS4);
cv::imwrite(lowres_path, destimg);
我已经尝试过插值,但似乎对图像没有影响。