免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6753 | 回复: 8
打印 上一主题 下一主题

[C++] 请教熟悉图形开发的高手,如何将校验图片放大并变清晰??? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-10-12 14:57 |显示全部楼层 |倒序浏览
本帖最后由 devilring 于 2012-10-12 14:59 编辑

原图:
我在vc2010下测试了2种方式,
一种是使用StretchBlt函数等比例放大,并使用SetStretchBltMode处理失真,效果如下:


另一种方式是使用GDI+放大,效果如下:


都不理想,请教高手,如何才能把这张图片放大后变清晰呢?就像下面这种效果:



大家看这张图,就是使用graphics.DrawImage的效果,中文字几乎都看不清,原图虽然也不是很清楚但确实能看出来是什么字,相对来说比放大后清楚多了


我猜想也许可以用滤镜什么的,但是都没有接触过,请教高手给予指点,谢谢

论坛徽章:
0
2 [报告]
发表于 2012-10-12 15:26 |显示全部楼层
怎么会不可能呢?你看帖子里第4张图,它的原图也和第1张图一样大小,提供图片校验的厂商放大后的效果就是第4张图那样,很清晰,只是我不知道他们是用什么办法实现的

论坛徽章:
0
3 [报告]
发表于 2012-10-12 17:37 |显示全部楼层
我的意思是,原图放大后,不会出现锯齿效果或者模糊化(分辨率降低了),你们可以用我贴的那张原图做下测试,在编辑的时候放大,效果就和第2张差不多,用IE浏览再打开,效果就和第3张图效果差不多,我使用StretchBlt和graphics.DrawImage分别实现了这2种效果,但是这2种效果都不理想;
都不能满足把原图在放大后,能保持分辨率而且又不出现锯齿划,就是就像第4张图那样;
第3张图其实看的还算清楚,但是分辨率太低,有点儿虚化的感觉,我要的效果就是第3张图的分辨率达到第2张图那样,这就是第4张图的效果;

论坛徽章:
0
4 [报告]
发表于 2012-10-12 17:41 |显示全部楼层
本帖最后由 devilring 于 2012-10-12 17:42 编辑

其实我就是想让第3张图的分辨率提高,这张图分辨率降低了,感觉像在图片上蒙了一层膜似的;
第2张图分辨率没降,但是颗粒度又太大,边缘锯齿化严重;

论坛徽章:
0
5 [报告]
发表于 2012-10-12 21:37 |显示全部楼层
再顶下自己的帖子,请高手指点!!!!

论坛徽章:
0
6 [报告]
发表于 2012-10-15 09:52 |显示全部楼层
本帖最后由 devilring 于 2012-10-15 10:03 编辑
starwing83 发表于 2012-10-13 00:21
楼主研究一下AGG,里面有关于iamge_resample相关的很多例子,其中有一个满足你的效果。

记得编译example ...


你好,首先很感谢你提供的线索;
另:问一下你说的agg是什么?我这是刚开始研究图形开发,所以不太清楚你说的agg是代表哪方面,而且你给的这个例子是个exe程序,我怎么编译。。。

论坛徽章:
0
7 [报告]
发表于 2012-10-15 10:09 |显示全部楼层
Ager 发表于 2012-10-12 22:18
这是可行的。前后都是矢量图,等势。


我要放大的图片原图是位图,不是矢量图,不过我觉得gvim贴出来的这2张图的效果比我想要的效果更加完美,我倒是还没想到要这么好,最初的想法只是想将原图放大后能保持基本不变,即没有锯齿又没有虚化;
另,gvim提供的资料我正下载全文,英文不太好,我得多看看,回头继续交流;
谢谢各位

论坛徽章:
0
8 [报告]
发表于 2012-10-15 11:20 |显示全部楼层
anders0913 发表于 2012-10-15 11:13
你在画图片时候,画大点不就行了,不理解为什么要画小图,然后再放大?


晕,我就是画图的时候想画大,但是画大以后不清晰啊,那个小图是我截取下来的原图

论坛徽章:
0
9 [报告]
发表于 2012-10-15 11:23 |显示全部楼层
starwing83 发表于 2012-10-15 10:30
回复 21# devilring

谢谢指点,我目前正在看imagemagick,因为正好手头上有本书提到这个开源的库,所以我想试试看能不能满足想要的效果,如果还是不行我再找你提到的agg的资料;
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP