Вы, вероятно, хотите захватить в поток , а затем разобраться с этим.
У меня нет Pi, доступного для тестирования прямо сейчас, но что-то вроде:
import io
import time
import picamera
@app.route('/camera',methods=['POST'])
def takephoto():
# Create an in-memory stream
my_stream = io.BytesIO()
with picamera.PiCamera() as camera:
camera.start_preview()
# Camera warm-up time
time.sleep(2)
camera.capture(my_stream, 'jpeg')
my_stream.seek(0)
return send_file(my_stream.read(), mimetype='image/jpeg')
Затем создайте отдельный маршрут, который отображает шаблон:
@app.route('/')
def index():
return render_template('index.html')
С этим в шаблоне:
<img src="{{ url_for('takephoto') }}" />
Перезагрузка этой страницы должна захватить новое изображение.