我有一张图像,我想放大并以高细节查看。它的大小未知,大部分是黑白的,上面有一些文字。当我放大文本变得不可读时,我认为这是因为没有足够的像素/纹素来显示,所以我将图像放大了 2 倍。现在我已经缩放了它,它仍然不可读。
然后我开始使用 OpenCV:
void resizeFirst(){
Mat src = imread( "../floor.png", 1 );
Mat tmp;
resize(src,tmp,Size(),3,3,INTER_CUBIC);
Mat dst = tmp.clone();
Size s(3,3);
//blur( tmp, dst, s, Point(-1,-1) );//homogeneous
GaussianBlur(tmp, dst, s, 3);//gaussian
//medianBlur ( tmp, dst, 5 );//median
//bilateralFilter ( tmp, dst, 5, 5*2, 5/2 );
addWeighted(tmp, 1.5, dst, -0.5, 0, dst);
imwrite("sharpenedImage.png",dst);
}
void blurFirst(){
Mat src = imread( "../floor.png", 1 );
Size s(3,3);
Mat dst;
GaussianBlur(src, dst, s, 3);//gaussian
addWeighted(src, 2, dst, -1, 0, dst);
Mat tmp;
resize(dst,tmp,Size(),3,3,INTER_CUBIC);
imwrite("sharpenedImage0.png",tmp);
}
并且输出更好,但图像仍然不清晰。有没有人对放大图像时如何保持文本清晰有任何想法?
编辑:下面是示例图像。
第一个是较小的原始分辨率,第二个是我调整大小并尝试按照以下方式进行高斯锐化