霍夫变换可以在商业软件中使用吗?
我的意思是,它是那些看起来只是研究且不稳定的事情之一。例如,您不会将它放在商业合成软件中并让用户始终依赖它。
有什么意见吗?
谢谢
霍夫变换可以在商业软件中使用吗?
我的意思是,它是那些看起来只是研究且不稳定的事情之一。例如,您不会将它放在商业合成软件中并让用户始终依赖它。
有什么意见吗?
谢谢
霍夫变换已在世界各地的商业和工业应用中使用多年,甚至几十年。从wikipedia 页面您可以看到它最初是在 1972 年开发的,基于 1962 年的早期想法。这意味着它比您用来捕获合成软件中使用的图像的CCD更老。
鉴于它对您来说“似乎只是研究且不稳定”,我建议您花一些时间学习各种计算机视觉和图像分析算法和技术,并在一般情况下在该领域获得良好的数学基础,然后再在商业中实现霍夫变换合成软件。
当您完成学习后,我建议您使用经过良好测试的开源实现。
是的。事实上,我已经为一个商业软件编写了 Hough 变换代码,该软件并不打算成为像 MATLAB 这样的研究工具。尽管我花了很多时间来研究它对特定应用程序的鲁棒性,但它工作得很好。
霍夫变换本身有时在您有一定程度噪声的应用程序中(例如在网络摄像头中)或当您需要提取的形状存在一些失真时可能不可靠。这可能就是您所看到的。在这种情况下,您可能需要对您的应用程序进行更多调整,或者尝试一些基本的图像预处理。
我对问题的评论(由高性能标记)以及这里接受的答案中的居高临下的语气有点恼火。
首先,编程库/框架提供算法的实现并不意味着它已被使用,或者更确切地说,它适合商业应用程序(即,在不太原始的条件下稳健地完成工作)。Hough 变换是一种定义明确的算法(具有可能的用途和限制),它非常简单易懂,并且在介绍性图像处理课程中非常普遍。毫不奇怪,它已经在 Matlab、Octave 和 OpenCV 等通用库中实现。我不相信这个问题是为了讨论实现的稳健性和包含在商业图像处理框架中的可能性,而是算法本身是否非常适合最终用户软件(一个计算圆圈的应用程序,或者什么不是) .
就目前而言,公认的答案是“该算法非常古老。这是一本关于图像处理的书,这是实现它的图像处理库的链接”。另一个零分的答案似乎是关于主题的(即讨论可能的应用程序),尽管不是很具体(“为我工作”)。
那么,为什么有些人会觉得霍夫变换对形状检测不可靠呢?这是一个很好的例子:Unreliable results with cv2.HoughCircles
输入似乎是非常明确的圆圈。但是,更强大的建议工作解决方案不使用霍夫变换。我在自己的项目中也有类似的经历。通常,更稳健的方法是某种对象分割、距离变换、分水岭和峰值定位。我曾经使用过 Hough 变换并取得了很好的效果吗?不,我认为它在某些情况下可能有用。特别是如果成像对象的形状被完美定义,并且部分被遮挡。
换句话说,我也很好奇最终受益于霍夫变换的商业应用程序。这就是我遇到这个问题的方式,随后对“如果你更好地理解这个主题,你就不会问这个问题”感到失望,回复。