我有一个功能,需要在开始时关闭相机并在结束时重新打开它。我知道关闭它我会这样做:
import picamera
camera = picamera.PiCamera()
camera.close()
如何重新打开它?
答案 0 :(得分:0)
也许你可以创建一个新的相机实例。 (这可能是最简单的解决方案)
function convertFloatSwapWord(number) -- number is string of format = 0x########
local x = 0
x = float2hex(number)
x = intToHex(x)
x = string.sub(x,5,6) .. string.sub(x,3,4) .. string.sub(x,9,10) .. string.sub(x,7,8)
x = hex2float(tonumber(x, 16))
return x
end
或者,您可以尝试设计功能以保持相机打开,然后在程序结束时将其关闭。可以使用with语句自动实现:
camera = picamera.PiCamera()
但我担心picamera的API不允许重新打开相机。你也可以尝试" hack"使用"私人"进入picamera方法。 当您查看关闭代码时,您会看到:
with picamera.PiCamera() as camera:
...do something...
但是这需要重新打开其他几个对象,例如_preview,_splitter和_camera(它们甚至被设置为None)。这可能很难做到,不稳定且版本之间不兼容。所以,不要这样做。
答案 1 :(得分:0)
也许试试这个
camera = PiCamera()
camera.start_preview()
sleep(5)
camera.capture("object.jpeg")
camera.stop_preview()
camera.close()