将图像放置在另一图像的特定区域中

时间:2012-08-04 02:53:09

标签: image-processing

这是一个椭圆形和一个方框

image1

image2

目标是将椭圆放在绿色框内。

如果您想象底部的绿色框是您的边界,则顶部图像可以放置在绿色框内的任何位置。椭圆形不能流到绿箱外面。

输入只是两个图像,我被告知“将红色椭圆形放在绿色框中”。如果不可能(例如:椭圆形太大),则没有任何反应。

在图像编辑器中手动完成它是微不足道的:只需将顶部图像拖到绿色框上,并确保它不会从两侧流出。

如何处理这个问题?

1 个答案:

答案 0 :(得分:1)

有多种方法可以做到这一点,选择一种方法取决于问题的限制。在最简单的情况下,如果您知道红色,蓝色和绿色的确切颜色,并且知道没有任何形状旋转,则解决方案很简单。首先将图像二值化,以便只分离一个对象(椭圆或矩形),然后找到该对象的最高点,最低点,最左点和最右点。重复其他对象。该信息将告诉您椭圆是否适合矩形。

如果这些约束过于严格,那么您可能希望使用blob检测。可能是cvblobcvblobslib。他们可以处理不同颜色和方向的更一般情况。