Правильно декодировать base64 что бы работало с cv2

Рейтинг: 0Ответов: 0Опубликовано: 05.03.2023

Приходит изображение по апи в байтах, я его декодирую и совершаю манипуляции с cv2. Проблема в том что после декодинга не видит размеры (cv2.shape). Как правильно обработать чтобы работало?

face_cascade = cv2.CascadeClassifier("haarcascade_frontalface_default.xml")
img = base64.b64decode(image_64_encode)
koef = 512/img.shape[1]
dsize = (512, round(img.shape[0]*koef))
output = cv2.resize(img, dsize)
gray = cv2.cvtColor(output, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.05, 10)

for (x, y, w, h) in faces:
    x1 = round(x+(w/2)-256)
    y1 = round(y+(h/2)-256)
    crop_img = output[y1:y1 + 512, 0:512]
cv2.imshow("img", crop_img)
cv2.waitKey(0)

'bytes' object has no attribute 'shape'

Ответы

Ответов пока нет.