2016-04-28 2 views
0

У меня есть настольное приложение для обнаружения лиц, написанных на скрипте python, с использованием opencv и numpy. Я хочу положить эти файлы python в фляжку и запустить его, будет ли он работать без проблем? подобныеЗапустить скрипт Python в 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() 

будет ли это работать? если нет, то как я могу его включить? благодаря!

+0

Я не думаю, что вы понимаете, что делают Чертежи. Они просто организуют маршруты приложения Flask. Они не очень полезны для внешних функций. Для этого вы можете использовать стандартный модуль Python. –

+2

«Вот код мира привет от документов, не связанных ни с чем, что я написал, могу ли я разместить здесь другой код?» У вас есть * конкретный вопрос программирования *? – davidism

ответ

1

Да, это сработает, вам нужно знать одно, если вы делаете это как показано ниже, HTTP-запрос не будет возвращаться до тех пор, пока обработка не будет выполнена, например.

@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 

В противном случае, если вы положили в основной функции, как показано ниже

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() 

Тогда ваша колба приложение не запускается до инициализации/обработка выполняется.

+0

Я обращаюсь к веб-камере и делаю снимок, затем обрабатываю его и возвращаю изображение? было бы похоже на фотографию, а затем вернуть что-то? или сделать app.run(), а затем вернуть результат? –

+0

Я знаю чертежи, но он используется с html и css-файлами, будет ли он работать с python? –

+0

'app.run()' запускает ваше флеш-приложение, поэтому я бы не поставил перед ним какой-либо код, если он не предназначен для инициализации приложения. Чтобы показывать фотографии с веб-камеры, вы можете, например, используйте мой первый пример, используя 'route ('/ webcam')' и чтобы эта функция возвращала изображение, снятое с веб-камеры – bakkal

Смежные вопросы