2016-04-28 12 views
0

Ich habe eine Desktop-Anwendung zu erkennen Gesichter in Python-Skript geschrieben, mit opencv und numpy. Ich möchte diese Python-Dateien in Kolben und führen Sie es, würde es ohne Probleme laufen? wieRun Python Script in Flask

import cv2 
import numpy as np 
from flask import Flask 
app = Flask(__name__) 

## define my functions here 

@app.route('/') 
def hello_world(): 
    return 'Hello World!' 

if __name__ == '__main__': 
    #call the functions here 
    app.run() 

würde das funktionieren? Wenn nicht, wie bekomme ich es? Vielen Dank!

+0

Ich glaube nicht, dass Sie verstehen, was Blueprints tun. Sie organisieren einfach die Routen der Flask App. Sie sind nicht wirklich nützlich für externe Funktionen. Sie können dafür ein Standard-Python-Modul verwenden. –

+2

"Hier ist der Hallo Weltcode aus der Dokumentation, der nichts mit dem zu tun hat, was ich geschrieben habe. Kann ich hier einen anderen Code einfügen?" Hast du eine * spezifische Programmierfrage *? – davidism

Antwort

1

Ja, es würde funktionieren, eine Sache, die Sie wissen sollten, ist, wenn Sie unten mögen, die HTTP-Anfrage wird nicht zurückkehren, bis nach der Verarbeitung z.

@app.route('/webcam') 
def webcam_capture(): 
    """ 
    Returns a picture snapshot from the webcam 
    """ 
    image = cv2... # call a function to get an image 

    response = make_response(image) # make an HTTP response with the image 
    response.headers['Content-Type'] = 'image/jpeg' 
    response.headers['Content-Disposition'] = 'attachment; filename=img.jpg' 

    return response 

Andernfalls, wenn Sie wie in der Hauptfunktion setzen unter

if __name__ == '__main__': 
    # <-- No need to put things here, unless you want them to run before 
    # the app is ran (e.g. you need to initialize something) 

    app.run() 

Dann wird Ihr Kolben App bis zum init nicht anspringt/Verarbeitung erfolgt.

+0

ich greife auf die webcam zu und mache ein bild, verarbeite es und schicke das bild zurück? wäre wie bild machen dann etwas zurückgeben? oder mache app.run() dann das Ergebnis zurückgeben? –

+0

Ich kenne Blaupausen, aber es wird mit HTML und CSS-Dateien verwendet, würde es mit Python-Einsen funktionieren? –

+0

'app.run()' startet Ihre flask-App, also würde ich keinen Code davor setzen, außer es ist die App zu initialisieren. Um Bilder von der Webcam zu zeigen, können Sie z.B. benutze mein erstes Beispiel mit 'route ('/ webcam')' und lasse diese Funktion ein von der Webcam aufgenommenes Bild zurückgeben – bakkal