gpt4 book ai didi

python - 将来自相机的帧写入 OpenCV 中的单个图像

转载 作者:太空宇宙 更新时间:2023-11-03 21:12:41 25 4
gpt4 key购买 nike

我正在尝试从相机抓取帧并将它们添加到单个图像中以获得此图像中的效果:http://www.danheller.com/images/California/DeathValley/Nite/tent-star-trails.jpg

但几秒钟后我的图像变白了。这是代码:

#!/usr/bin/python
import cv
stream = cv.CaptureFromCAM(0)
cv.NamedWindow("Stream",1)
out = cv.CreateImage((640, 480), 8, 3)
while True:
frame = cv.QueryFrame(stream)
cv.Add(frame, out, out, None)
cv.ShowImage("Stream", out)
cv.WaitKey(25)

有人能帮忙吗?

最佳答案

是的,您的图像会在几帧后变白,因为逐个像素地添加图像会大大增加亮度。您必须想出更好的算法来将图像合并在一起。

您可以这样做的一种方法是添加两个图像,然后在添加更多图像之前标准化生成的图像,或者如果您要添加大量帧,则只添加图像像素值的小倍数 (0.01)每帧生成的图像,但再次标准化生成的图像,使暗像素保持暗。这有效地模拟了使用真实相机创建的长时间曝光效果。

真正的相机通过非常低的曝光设置来产生这种效果,所以一次只有几个光子进入镜头,所以当你让相机静止一会儿时,越来越多的照片击中胶卷并最终使画面变亮.如果你离开相机的时间足够长。如果你把相机放在外面太久,照片也会发生同样的事情,它会变白。直接把照片叠加在一起就像曝光度很高一样,大量的光线一下子进入镜头,照片就发白了。

关于python - 将来自相机的帧写入 OpenCV 中的单个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6972870/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com