UnicodeDecodeError при попытке начать обучение - PullRequest
2 голосов
/ 26 мая 2020

для моего исследования у нас (я и еще 3 человека) есть задача обучить сеть, которая обнаруживает автомобили с тензорным потоком. Мы нашли учебник, который, по нашему мнению, кажется достаточно простым:
https://towardsdatascience.com/creating-your-own-object-detector-ad69dda69c85
Мы получили изображения, мы создали CSV. files и tfrecord и попытался запустить процесс обучения.

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 8: invalid start byte

Это ошибка, которую мы получаем. Мы считаем, что проблема связана с тем, как мы создаем файлы tfrecord, но, возможно, кто-нибудь сможет указать нам правильное направление. Файлы tfrecord имеют размер от 300 МБ до 1,4 ГБ, так что, по крайней мере, мы знаем, что там что-то создается.

Как наш csv. файл выглядит так (у нас ~ 3500 изображений):

filename,label,xmin,ymin,xmax,ymax
SSDB00888.JPG,car,403.0,416.0,868.0,579.0
SSDB00889.JPG,car,46.0,419.0,303.0,539.0
SSDB00889.JPG,car,392.0,394.0,636.0,512.0
SSDB00889.JPG,car,819.0,367.0,1040.0,488.0
SSDB00890.JPG,car,553.0,419.0,1051.0,700.0

Код, как мы хотим создавать файлы tfrecord. (Мы, конечно, просто скопировали из учебника и немного изменили его, так как у нас были разные метки для наших изображений). Мы попробовали изменить код в нескольких частях, но ничего особенного не изменилось. Мы всегда получаем ошибку в начале обучения, и мы действительно не знаем, как это сделать. вне. Первый тензорный поток слишком сложен.

РЕДАКТИРОВАТЬ:
Я добился некоторого прогресса. Я обнаружил, что мои файлы .tfrecords, похоже, закодированы в формате ansi, а не в формате utf-8. Может быть, поэтому возникает ошибка, но я не знаю, как изменить существующие файлы .tfrecord или создать новые с другой кодировкой.

...