一道关于图像处理的题目

shanshuodexingyun 2008-03-02 01:10:59
这是该题目的链接:http://www.cosc.brocku.ca/Offerings/5P73/a2.html

您可以点击题目中黄色的1,2,3,4看到四幅图

这道题目的实质就是要把这四幅(其中某些图有重合部分),复原为完整的一幅图。


以下是我的思路:

由于原图是jpg格式,所以我首先转换为位图保存,在转换为灰度图,但是由于最终要求输出结果是一幅彩色图,我不知道这样转换行不行。

然后我随便读出两幅图,假设它们有重合部分,我就寻找最大匹配(也就是公共块),找到后用平均值法将两幅图拼接,再这样递归下去,直到拼出整幅图


由于本人以前没有接触过图像处理,不知道这样的思路能否实现,也不知道该如何一步一步实现。还望各位指导,如果能够加我的QQ一起讨论,更是万分感激。谢谢

我的QQ:31836236 加我时注明图像处理即可

...全文
204 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hndxh3000 2008-03-04
  • 打赏
  • 举报
回复
opencv
cvMatchTemplate();
shanshuodexingyun 2008-03-04
  • 打赏
  • 举报
回复
今天老师降低了要求,只要实现拼接就行,最终显示出来图像的颜色没有要求,可以只有黑白色即可。但是还是不太清楚两幅图之间怎样去实现匹配找最大公共区域。我有一个思路是把原图转换为二值图,但是比较时怎样去记录最大公共快呢
shanshuodexingyun 2008-03-03
  • 打赏
  • 举报
回复
现在存在这样一个问题,大家可以点开那些图看到。就是本来两幅图的重叠区域是很明显的,但是图片上恐龙的颜色却不同,那么我真的在匹配的时候,这种情况怎么让它能成功匹配呢?还有对于jpg获取颜色值很难,我如果在保存图片时直接另存为bmp或者tiff格式,那么对于获取颜色值要好办的多,但是这样的话获取到的颜色值会不会跟原本的有较大差异呢?
hndxh3000 2008-03-03
  • 打赏
  • 举报
回复
象这样的拼接,我知道sift算法最好,但是我不会,上次在这个区发帖,也没几个人理我

不过,假如你可以知道大概的重叠区域大小,你上面所说的思路应该是可行的

至于读取某个像素的rgb值,我相信cxImage可以做到(我没用过,我用的opencv)。
用户 昵称 2008-03-03
  • 打赏
  • 举报
回复
不会有多大差异,jpg->bmp是无损的。
shanshuodexingyun 2008-03-03
  • 打赏
  • 举报
回复
非常感谢楼上的思路,但是我感觉第一步实现就不是很容易,我在网上搜索了一下,没有找到很好的能够读取jpg图像每个像素的RPG值的方法,
因为我也是由于此次要写这个程序才接触到图像处理这一块。还请大家能给我再说详细一些。
rover___ 2008-03-02
  • 打赏
  • 举报
回复
看题目要求挺严格的。说下思路:
不需要转换为灰度图也可以进行匹配
1、先要了解jpg文件格式,要有办法直接从文件中,读取图象尺寸、以及每个象素的RPG值。有了读象素RPG值的功能就可以 直接对4个文件操作。不需要转换。
2、寻找图象1与其他3图象最大匹配公共块,并记录。如果需要就找出4副图象两两之间的所有最大匹配公共块,记录位置。利用找到的信息判断4图象的位置关系。
2、在VC下打开一个窗口,画出第一副图象(位置在左上的那个)。并逐个拼接上其余图象。如果必要,进行边沿处理。
4、在VC下将得到的图象按照jpg文件格式输出。

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧