Я использую 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'
Что я должен сделать, чтобы исправить эту ошибку?