Попытка выгрузить изображения в базу данных, но после нескольких попыток получить ошибку - PullRequest
0 голосов
/ 21 мая 2019

Я использую python для подключения к базе данных mysql (в облаке), а затем отправляю изображения в таблицу. Изображения имеют любое лицо, которое обнаруживает камера, и код распознавания лица в python работает нормально.

Вот код для загрузки изображений в базу данных mysql


                epoch = time.time()
                tt = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(epoch))
                roi = frame[(round(top)-margin-15):(round(bottom)+margin),(round(left)-margin):(round(right)+margin)]
                roi1 = cv2.imencode('.jpg',roi)[1].tostring()


                data_sql = [name,1,roi1,tt]

                if False in temp_matches:
                mycursor.execute(sql_insert_query2,data_sql)

                mydb.commit()

приведенный выше код находится в цикле while (пока камера включена)

Код работает, если я сижу неподвижно перед камерой, если я двигаюсь внутрь и из поля зрения камеры (чтобы он снова распознал), я получаю следующую ошибку

  File "testing_face_recognition_live5.py", line 430, in <module>
    main()
  File "testing_face_recognition_live5.py", line 341, in main
    roi1 = cv2.imencode('.jpg',roi)[1].tostring()
cv2.error: OpenCV(3.4.5)
 C:\projects\opencv-python\opencv\modules\imgcodecs\src\grfmt_base.cpp:145
: error: (-10:Unknown error code -10)
 Raw image encoder error: Empty JPEG image (DNL not supported) in 
function 'cv::BaseImageEncoder::throwOnEror'

Что я должен сделать, чтобы исправить эту ошибку?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...