Image processing 图像中的模式识别

Image processing 图像中的模式识别,image-processing,pattern-recognition,Image Processing,Pattern Recognition,我正在寻找一种快速的想法/算法,让我在图像文件中找到正方形作为标记点。然而,这不应该是太大的挑战 我首先将源图像的颜色更改为灰度图像,然后逐像素扫描图像的每一行,寻找两条、三条最长的线 然后有一系列的线,我正在寻找可以创造欲望广场的元素 更好的办法是找到具有已知特征的图案,比如:它是正方形的,在正方形之外没有变形,只有空白等等 目标是在不到1-2秒内分析5000 X 5000像素的图像 可能吗?请参见比例不变特征变换、模板匹配和霍夫变换。一个快速且不准确的猜测可能是绘制颜色直方图并进行比较。如果

我正在寻找一种快速的想法/算法,让我在图像文件中找到正方形作为标记点。然而,这不应该是太大的挑战

我首先将源图像的颜色更改为灰度图像,然后逐像素扫描图像的每一行,寻找两条、三条最长的线

然后有一系列的线,我正在寻找可以创造欲望广场的元素

更好的办法是找到具有已知特征的图案,比如:它是正方形的,在正方形之外没有变形,只有空白等等

目标是在不到1-2秒内分析5000 X 5000像素的图像


可能吗?

请参见比例不变特征变换、模板匹配和霍夫变换。一个快速且不准确的猜测可能是绘制颜色直方图并进行比较。如果图像足够复杂,您可能能够区分多组图像

简单来说,假设R、G和B有三个桶。完全白色的图像有100%、100%、100%的R、G、B。完全红色的图像有100%、0%、0%。一个复杂的图像可能有23%,53%,34%。如果你测量R,G,B空间中点之间的距离,你可以比较哪一个更近


我想chris的链接解决了这个问题:

参见比例不变特征变换、模板匹配和Hough变换。一个快速且不准确的猜测可能是绘制颜色直方图并进行比较。如果图像足够复杂,您可能能够区分多组图像

简单来说,假设R、G和B有三个桶。完全白色的图像有100%、100%、100%的R、G、B。完全红色的图像有100%、0%、0%。一个复杂的图像可能有23%,53%,34%。如果你测量R,G,B空间中点之间的距离,你可以比较哪一个更近

我想chris的链接解决了这个问题:

一个OpenCV示例squares.cpp就是这样做的,代码请参见。或者,您可以查找Hough变换以检测图像中的所有直线,然后测试两条以直角相交的直线

本网站上还有许多资源可以帮助您:

我肯定还有其他的,这些只是我遇到的第一批。

其中一个OpenCV示例squares.cpp就是这样做的,请参阅以获取代码。或者,您可以查找Hough变换以检测图像中的所有直线,然后测试两条以直角相交的直线

本网站上还有许多资源可以帮助您:


我肯定还有其他的,这些只是我遇到的第一批。

我可以补充一点,图像是黑白的,这应该很容易解决问题。但问题是,搜索模式可能是图像中可能出现的形状的一部分,唯一能区别的是模式之外的白色。我可以补充一点,图像是黑白的,这应该很容易解决问题。但问题是,搜索模式可能是图像中可能出现的形状的一部分,唯一能区别的是模式之外的白色。添加两幅图像,显示您正在尝试实现的目标和您尝试过的目标,这将非常有用。添加两张图片,显示您正试图实现的目标,以及您已尝试的目标,将非常有用。