image-processing - openCV检测闪烁的灯

标签 image-processing opencv computer-vision

我的问题和这个类似: OpenCV: Detect blinking lights in a video feed

我有一个 LED 灯,我的相机以 30fps 的速度运行。在每一帧,我都想知道灯是否亮着。和上一个问题类似,我也想得到那个点的位置。

我现在想知道如何为此实例使用 openCV(我是新手)。如果光线只是一个像素,这将很容易,但考虑到相当大的背景噪音和 LED 的尺寸,我如何才能检测到图像中最大的光源。我必须假设我不能自由设置曝光(在 iPhone 上)。

我是图像处理的新手,我该如何学习?

最佳答案

如果背景只是嘈杂,但变化不大,你可以减去背景:

你有 2 帧,你做 Frame2-Frame1,然后你应用一个阈值(阈值取决于 LED 的强度,所以你应该测试它),你设置黑色低于阈值并将高于阈值的像素变白。

如果您将图像转换为灰度图像,这将非常容易。

应该是这样的:

cvAbsDiff(img2, img1, img2);
cvThreshold(img2, img2, (double)threshold_value, 255 (if you are using an rgb image), CV_THRESH_BINARY);

如果您的 LED 灯熄灭,您应该只消除噪音,而如果您的 LED 灯亮着,您会期望找到一个白色区域,您的灯正在照亮。

关于image-processing - openCV检测闪烁的灯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8877228/

相关文章:

java - 在特写车牌图像上使用 JavaANPR

matlab - 根据颜色分割图像中的像素 (Matlab)

c# - 检测纸边并裁切

machine-learning - 为什么不使用 IOU 进行训练呢?

python - 为什么 inpaint 方法不能从 IC 图像中删除文本?

c++ - 图像矩阵转字符串 OpenCV C++

opencv - 如何使用 Homebrew 软件安装具有 VTK 功能的 opencv3?

python - 边距

deep-learning - YOLOv4 中的损失和 mAP 图表

image-processing - 我从哪里开始学习图像处理和对象识别?