求一个检测多圆圆心的算法,(附多圆图片)
求一个 检测 多圆 圆心的算法,。。。 如果你的是单色图,用openCV的霍夫变换可以找出来,我有例程,但是会内存溢出,我以前想在项目上用,最终放弃 hmd420304805 发表于 2014-4-18 14:28如果你的是单色图,用openCV的霍夫变换可以找出来,我有例程,但是会内存溢出,我以前想在项目上用,最终放 ...
额 我的图像是三通道的,是CCD相机采集得到的。。估计 hmd420304805 发表于 2014-4-18 14:28
如果你的是单色图,用openCV的霍夫变换可以找出来,我有例程,但是会内存溢出,我以前想在项目上用,最终放 ...
24位真彩色的。。 hmd420304805 发表于 2014-4-18 14:28
如果你的是单色图,用openCV的霍夫变换可以找出来,我有例程,但是会内存溢出,我以前想在项目上用,最终放 ...
但是我实际应用的时候,圆形标定板可能经透视编程椭圆,你有什么好的算法或者思路 检测多椭圆的中心吗?拜谢大神。。 hmd420304805 发表于 2014-4-18 14:28
如果你的是单色图,用openCV的霍夫变换可以找出来,我有例程,但是会内存溢出,我以前想在项目上用,最终放 ...
我可以参考下你的程序么?如果可以的话。。 mayo20102012 发表于 2014-4-18 15:03
24位真彩色的。。
先变换成灰度图再处理。。。。 可以根据霍夫变换原理,自己写代码找椭圆。。。。。。 这个用OpenCV很简单的, 先cvFindContours轮廓提取,然后对每个封闭的轮廓,调用cvFitEllipse2椭圆拟合,就可以求出圆心了, 还可以用拟合圆来判断你的图像上的圆是否有缺陷。 lans0625 发表于 2014-4-18 20:15
可以根据霍夫变换原理,自己写代码找椭圆。。。。。。
我想的跟你一样,是想自己写代码的。。但感觉有点复杂。,,。 bangtian 发表于 2014-4-18 20:37
这个用OpenCV很简单的, 先cvFindContours轮廓提取,然后对每个封闭的轮廓,调用cvFitEllipse2椭圆拟合,就 ...
这个函数可以检测多个椭圆的圆心么? bangtian 发表于 2014-4-18 20:37
这个用OpenCV很简单的, 先cvFindContours轮廓提取,然后对每个封闭的轮廓,调用cvFitEllipse2椭圆拟合,就 ...
关键是opencv的函数对图像有要求的吧,要求是单通道图像,我的图像是CCD相机采集的 是24位真彩色图像。。要使用opencv的话 还不能直接使用。 不复杂呀,理解了霍夫变换原理,C&C++就10...20行关键代码{:tongue:}{:tongue:}{:tongue:} {:dizzy:}强大, 看不懂 lans0625 发表于 2014-4-18 21:07
不复杂呀,理解了霍夫变换原理,C&C++就10...20行关键代码 ...
如果只是检测一个椭圆的话,貌似确实不复杂,但是要检测多个椭圆,还得快速,看过几种别人的算法, 感觉有点。。。 检测多个椭圆也不复杂,要快速的确很难。。。。 mayo20102012 发表于 2014-4-18 21:03
关键是opencv的函数对图像有要求的吧,要求是单通道图像,我的图像是CCD相机采集的 是24位真彩色图像。。 ...
OpenCV图像是有要求的, 你的24位彩色图,先cvCvtColor转换成灰度图,再cvThreshold二值化,就可以用了。 但是OpenCV的东西都是在PC上跑的,如果要在FPGA上实现,就太难了。 给个例子,也许有用http://opencv-code.com/tutorials/detecting-simple-shapes-in-an-image/ 用霍夫变换吧,原理不难。 cvFindContours 就是这个函数,例子很简单 看看教程就可以做了,主要注意内存溢出 MARK一下{:lol:}{:lol:}{:lol:} hmd420304805 发表于 2014-4-19 16:34
cvFindContours 就是这个函数,例子很简单 看看教程就可以做了,主要注意内存溢出 ...
我已经用opencv的函数进行了多椭圆拟合,谢谢。。。
页:
[1]