Quick Draw — игра для рисования, которая обучает нейронную сеть распознавать каракули.
quickdraw
— это API Python для доступа к данным Quick Draw. Он загружает файлы данных по мере необходимости, кэширует их локально и интерпретирует, чтобы их можно было использовать.
Создано Мартином О'Хэнлоном (@martinohanlon, Stuffaboutco.de).
Установите библиотеку Python Quickdraw с помощью pip.
pip install quickdraw
pip3 install quickdraw
sudo pip3 install quickdraw
Вот несколько примеров использования quickdraw
, но обязательно ознакомьтесь с документацией API для получения дополнительной информации.
Откройте данные Quick Draw с помощью QuickDrawData и извлеките рисунок наковальни .
from quickdraw import QuickDrawData
qd = QuickDrawData ()
anvil = qd . get_drawing ( "anvil" )
print ( anvil )
quickdraw
загрузит файл данных anvil.bin
и вернет данные для случайного рисунка наковальни (ну, в любом случае, рисунка наковальни).
Рисунки возвращаются как объекты QuickDrawing, которые раскрывают свойства рисунка.
print ( anvil . name )
print ( anvil . key_id )
print ( anvil . countrycode )
print ( anvil . recognized )
print ( anvil . timestamp )
print ( anvil . no_of_strokes )
print ( anvil . image_data )
print ( anvil . strokes )
Вы можете сохранить рисунок, используя свойство image
.
anvil . image . save ( "my_anvil.gif" )
Вы можете сохранить анимацию рисунка, используя свойство animation
.
anvil . animation . save ( "my_anvil_animation.gif" )
Вы можете открыть группу рисунков Quick Draw, используя QuickDrawDataGroup, указав имя рисунка («наковальня», «самолет», «бейсбол» и т. д.).
from quickdraw import QuickDrawDataGroup
anvils = QuickDrawDataGroup ( "anvil" )
print ( anvils . drawing_count )
print ( anvils . get_drawing ())
По умолчанию открываются только 1000 рисунков. Вы можете изменить это, изменив параметр max_drawings
QuickDrawDataGroup, установив для него None
чтобы открыть все чертежи в этой группе.
from quickdraw import QuickDrawDataGroup
anvils = QuickDrawDataGroup ( "anvil" , max_drawings = None )
print ( anvils . drawing_count )
Для перебора всех рисунков в группе используйте генератор рисунков.
from quickdraw import QuickDrawDataGroup
qdg = QuickDrawDataGroup ( "anvil" )
for drawing in qdg . drawings :
print ( drawing )
Вы можете получить список всех имен чертежей, используя свойство Drawing_names объекта QuickDrawData.
from quickdraw import QuickDrawData
qd = QuickDrawData ()
print ( qd . drawing_names )
Примеры кода можно найти в репозитории Quickdraw на GitHub.
Документацию по API можно найти по адресу Quickdraw.readthedocs.io.
Рисунки прошли модерацию, но нет никакой гарантии, что это действительно будет изображение того, о чем вы их просите (хотя, по моему опыту, это так)!
Стабильный .
Сообщайте о любых проблемах в репозитории github.