Как заменить обработку двоичных данных изображений в Flask в OpenCV на Pillow - PullRequest
0 голосов
/ 18 ноября 2018

В настоящее время я использую OpenCV для обработки изображения, переданного в реализацию Flask API, в виде двоичных данных, и я хотел бы заменить его на Pillow.

Данные передаются следующим образом:

# load image
img = open('test1.jpg', 'rb').read()
# send image and get response
response = requests.post(test_url, data=img, headers=headers)

И обрабатывается в колбе с открытым резюме, как это:

# route http posts to this method
@app.route('/api/test', methods=['POST'])
def test():
    r = request
    # convert string of image data to uint8
    nparr = np.fromstring(r.data, np.uint8)
    # decode image
    img = cv2.imdecode(nparr, cv2.IMREAD_COLOR)

1 Ответ

0 голосов
/ 18 ноября 2018

Решение было следующим:

# route http posts to this method
@app.route('/api/test', methods=['POST'])
def test():
    r = request
    # convert string of image data to uint8
    nparr = np.fromstring(r.data, np.uint8)
    # decode image
    img = Image.open(io.BytesIO(nparr))
...