Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opencv 如何使用平移、旋转和/或缩放调整匹配两个分割遮罩_Opencv_Image Processing_Computer Vision_Image Segmentation - Fatal编程技术网

Opencv 如何使用平移、旋转和/或缩放调整匹配两个分割遮罩

Opencv 如何使用平移、旋转和/或缩放调整匹配两个分割遮罩,opencv,image-processing,computer-vision,image-segmentation,Opencv,Image Processing,Computer Vision,Image Segmentation,我有两张从稍微不同的位置拍摄的照片。在对这些图像执行图像分割后,我想匹配两幅图像的分割遮罩,以便我能够识别两幅图像中的相同对象。大多数情况下,对象的大小或方向会发生变化: 有时,出现在一个图像中的对象不会出现在另一个图像中,例如: 我曾经尝试过使用质心位置和大小简单地匹配单个对象,但这很容易出错。使用OpenCV之类的工具进行此操作的最佳方法是什么?您可以尝试类似于RANSAC的方法。变换没有太大的倾斜,因此您可以尝试相似性变换(平移+旋转+缩放)。这只需要两个对应的点对。从两个匹配对中

我有两张从稍微不同的位置拍摄的照片。在对这些图像执行图像分割后,我想匹配两幅图像的分割遮罩,以便我能够识别两幅图像中的相同对象。大多数情况下,对象的大小或方向会发生变化:

有时,出现在一个图像中的对象不会出现在另一个图像中,例如:


我曾经尝试过使用质心位置和大小简单地匹配单个对象,但这很容易出错。使用OpenCV之类的工具进行此操作的最佳方法是什么?

您可以尝试类似于RANSAC的方法。变换没有太大的倾斜,因此您可以尝试相似性变换(平移+旋转+缩放)。这只需要两个对应的点对。从两个匹配对中,计算变换,变换其他点,然后查看它们的匹配程度


由于点的数量很小,对所有可能的点对(N(N-1)/2)进行彻底搜索并不过分。(看起来你可以在不引入反转的情况下从左到右对点进行排序,这将减少可能性的数量。)

你可以尝试一种类似RANSAC的方法。变换没有太大的倾斜,因此您可以尝试相似性变换(平移+旋转+缩放)。这只需要两个对应的点对。从两个匹配对中,计算变换,变换其他点,然后查看它们的匹配程度


由于点的数量很小,对所有可能的点对(N(N-1)/2)进行彻底搜索并不过分。(你似乎可以在不引入反转的情况下从左到右对点进行排序,这将减少可能性的数量。)

使用两对匹配的对象来计算变换是一个好主意,但我需要找到两对匹配的对象,它们的可信度很高,无需查看图像,因为我希望这完全是自动完成的。@rferdinand:我不确定你是否理解我的答案。这个方法可以解决这个问题。哦,我现在明白你的意思了。我必须尝试所有点对的组合,看看哪一个对所有其他点产生最好的变换。对于更复杂的图像,需要花费一点时间,但确实值得一试。谢谢@rferdinand:你可以找到一些技巧来避免详尽的比较。(我提到过一个。)这有点棘手,因为有时会因为视差而发生反转,但我可以跳过大小差异太大的对。使用两对匹配的对来计算转换是个好主意,但我需要找到两对高置信度匹配的对象,而无需查看图像,因为我希望这完全是自动完成的。@rferdinand:我不确定你是否理解我的答案。这个方法可以解决这个问题。哦,我现在明白你的意思了。我必须尝试所有点对的组合,看看哪一个对所有其他点产生最好的变换。对于更复杂的图像,需要花费一点时间,但确实值得一试。谢谢@rferdinand:你可以找到一些技巧来避免详尽的比较。(我提到过一个。)这有点棘手,因为有时会因为视差而发生反转,但我可以跳过尺寸差异太大的对。基本问题是通过视频跟踪对象。有一些简单的解决方案成功率有限,也有一些先进的解决方案。因为看起来您是在注释,所以实际上您的任务是确定对象标识。查看视频注释的CVAT:基本问题是通过视频跟踪对象。有一些简单的解决方案成功率有限,也有一些先进的解决方案。因为看起来您是在注释,所以实际上您的任务是确定对象标识。查看CVAT中的视频注释: