我正在尝试使用OpenCV通过内置摄像头来检测红外点。我的照相机能看到红外线。然而,我不知道如何区分可见光和红外光。转换为RGB后我们无法区分,但也许OpenCV有一些方法可以做到这一点。
有人知道这样的OpenCV函数吗?或者如何用其他方式来做呢?
--编辑
例如,是否可以使用笔记本电脑内置摄像头来识别光的波长?或者,如果没有特殊的相机,就不可能区分可见光和红外光?
发布于 2012-10-27 23:33:32
你不能在OpenCV中做任何事情,因为当它工作的时候,它只是另一个像可见光一样的RGB (你可以提到这一点)。
你说你的相机可以看到infrared...Does,这意味着它有一个将红外光和可见光分开的滤光片?在这种情况下,当您在OpenCV中获得图像时,您将只关注IR。然后看看强度等?
发布于 2012-10-28 10:44:14
在您的设置中,假设您有RGB +IR摄像机,您的摄像机可能会显示以下三个通道:
因此,很难直接从图像中识别红外像素。但没有什么是不可能的。R、G、B和IR是宽带,因此所有波长的信息都在通道中。
您可以做的一件事是训练分类模型,以便对具有大量图像数据的图像中的非IR和IR像素进行分类。有了该模型的训练,你就可以识别新图像的红外像素。
发布于 2013-01-31 17:57:51
没有办法通过软件将红外从可见光中分离出来,因为你的相机实际上是将红外光“转换”成你眼睛的可见光。我认为解决这个问题的唯一方法是使用两个摄像头,一个红外摄像头带有红外透射滤光片,另一个普通摄像头带有红外阻挡滤光片。然后,您可以匹配图像并提取所需的信息。
https://stackoverflow.com/questions/13101489
复制相似问题