Набор данных Quick Draw представляет собой коллекцию из 50 миллионов рисунков в 345 категориях, предоставленных игроками игры Quick, Draw!. Рисунки были записаны в виде векторов с отметкой времени и помечены метаданными, включая то, что игрока просили нарисовать и в какой стране он находился. Вы можете просмотреть распознанные рисунки на странице Quickdraw.withgoogle.com/data.
Мы делимся ими здесь, чтобы разработчики, исследователи и художники могли их исследовать, изучать и учиться у них. Если вы создадите что-то с этим набором данных, сообщите нам об этом по электронной почте или в AI Experiments.
Мы также выпустили руководство и модель для обучения вашего собственного классификатора рисунков на сайте tensorflow.org.
Имейте в виду, что, хотя эта коллекция рисунков модерируется индивидуально, она все равно может содержать неприемлемый контент.
Необработанный модерируемый набор данных
Предварительно обработанный набор данных
Получить данные
Проекты, использующие набор данных
Изменения
Лицензия
Необработанные данные доступны в виде файлов ndjson
, разделенных по категориям, в следующем формате:
Ключ | Тип | Описание |
---|---|---|
key_id | 64-битное целое число без знака | Уникальный идентификатор для всех рисунков. |
слово | нить | Категория, которую игроку было предложено нарисовать. |
признанный | логическое значение | Было ли слово распознано игрой. |
временная метка | дата и время | Когда был создан рисунок. |
код страны | нить | Двухбуквенный код страны (ISO 3166-1 альфа-2), где находится игрок. |
рисунок | нить | Массив JSON, представляющий векторный рисунок. |
В каждой строке содержится один рисунок. Вот пример одного рисунка:
{ "key_id":"5891796615823360","word":"nose","countrycode":"AE","timestamp":"2017-03-01 20:41:36.70725 UTC","распознан":true,"drawing":[[[129,128,129,129,130,130,131,132,132,133,133,133,133,...]]] }
Формат массива чертежей следующий:
[ [ // Первый ход [x0, x1, x2, x3, ...],[y0, y1, y2, y3, ...],[t0, t1, t2, t3, ...] ], [ // Второй штрих[x0, x1, x2, x3, ...],[y0, y1, y2, y3, ...],[t0, t1, t2, t3, ...] ], ... // Дополнительные штрихи]
Где x
и y
— координаты пикселей, а t
— время в миллисекундах с момента первой точки. x
и y
имеют действительные значения, а t
является целым числом. Необработанные чертежи могут иметь совершенно разные ограничивающие рамки и количество точек из-за разных устройств, используемых для отображения и ввода.
Мы предварительно обработали и разделили набор данных на разные файлы и форматы, чтобы ускорить и упростить его загрузку и изучение.
.ndjson
) Мы упростили векторы, удалили информацию о времени, а также расположили и масштабировали данные в область 256x256. Данные экспортируются в формате ndjson
с теми же метаданными, что и необработанный формат. Процесс упрощения заключался в следующем:
Выровняйте рисунок по левому верхнему углу, чтобы минимальное значение было равно 0.
Масштабируйте рисунок равномерно, чтобы максимальное значение было равно 255.
Измените выборку всех штрихов с интервалом в 1 пиксель.
Упростите все штрихи с помощью алгоритма Рамера-Дугласа-Пейкера со значением эпсилон 2,0.
В example/nodejs/simplified-parser.js есть пример, показывающий, как читать файлы ndjson в NodeJS.
Кроме того, в документе example/nodejs/ndjson.md подробно описан набор инструментов командной строки, которые могут помочь исследовать подмножества этих довольно больших файлов.
.bin
)Упрощенные рисунки и метаданные также доступны в специальном двоичном формате для эффективного сжатия и загрузки.
В example/binary_file_parser.py есть пример, показывающий, как загружать двоичные файлы в Python.
В example/nodejs/binary-parser.js также есть пример, показывающий, как читать двоичные файлы в NodeJS.
.npy
) Все упрощенные рисунки были преобразованы в растровое изображение в оттенках серого 28x28 в формате numpy .npy
. Файлы можно загрузить с помощью np.load()
. Эти изображения были созданы на основе упрощенных данных, но выровнены по центру ограничивающей рамки рисунка, а не по левому верхнему углу. См. здесь фрагмент кода, используемый для генерации.
Набор данных доступен в Google Cloud Storage в виде файлов ndjson
, разделенных по категориям. Просмотрите список файлов в облаке или узнайте больше о доступе к общедоступным наборам данных другими методами. Например, чтобы легко загрузить все упрощенные чертежи, можно запустить команду gsutil -m cp 'gs://quickdraw_dataset/full/simplified/*.ndjson' .
Необработанные файлы ( .ndjson
)
Файлы упрощенных чертежей ( .ndjson
)
Двоичные файлы ( .bin
)
Файлы растровых изображений Numpy ( .npy
)
Эти данные также используются для обучения модели Sketch-RNN. Реализация этой модели TensorFlow с открытым исходным кодом доступна в проекте Magenta (ссылка на репозиторий GitHub). Вы также можете прочитать больше об этой модели в блоге Google Research. Данные хранятся в сжатых файлах .npz
в формате, подходящем для ввода в рекуррентную нейронную сеть.
В этом наборе данных 75 тысяч выборок (70 тысяч обучающих, 2,5 тысяч проверочных, 2,5 тысяч тестовых) были случайным образом выбраны из каждой категории и обработаны с помощью линейного упрощения RDP с параметром epsilon
2,0. Каждая категория будет храниться в отдельном файле .npz
, например cat.npz
.
Мы также предоставили полные данные по каждой категории, если вы хотите использовать более 70 тысяч обучающих примеров. Они хранятся с расширениями .full.npz
.
Файлы Numpy .npz
Примечание. Для Python3 загрузка файлов npz
с помощью np.load(data_filepath, encoding='latin1', allow_pickle=True)
Инструкции по преобразованию файлов Raw ndjson
в формат npz
доступны в этом блокноте.
Вот несколько проектов и экспериментов, в которых набор данных используется или демонстрируется интересными способами. Есть что добавить? Дайте нам знать!
Творческие и художественные проекты
Коллажи из писем Деборы Шмидт
Эксперимент Нила Мендосы по отслеживанию лиц
Лица человечества от Tortue
Бесконечный QuickDraw от kynd.info
Misfire.io от Мэтью Коллайера
Нарисуй это Дэна Макниша
Каракульная речь Синьюэ Ян
ИллюстраЦия Лин Чена
Мечта об электроовце, доктор Эрнесто Диас-Авилес
Анализ данных
Как нарисовать круг? от Кварца
Forma Fluens Мауро Мартино, Хендрик Стробельт и Оуэн Корнек
Сколько времени нужно, чтобы (быстро) нарисовать собаку? Джим Валландингем
«Нахождение плохих рисунков фламинго с помощью рекуррентных нейронных сетей», Колин Моррис
Facets Dive x Quick, Draw! Исследовательская инициатива People + AI (PAIR), Google
Исследование и визуализация открытого глобального набора данных от Google Research
Машинное обучение для визуализации – доклад / статья Яна Джонсона
Статьи
Нейронное представление эскизных рисунков Дэвида Ха, Дугласа Эка, ICLR 2018. код
Sketchmate: глубокое хеширование для извлечения человеческих эскизов в миллионном масштабе, автор: Пэн Сюй и др., CVPR 2018.
Мультиграфовый преобразователь для распознавания эскизов от руки Пэн Сюй, Чайтанья К. Джоши, Ксавье Брессон, ArXiv 2019. код
Глубокое самоконтролируемое обучение представлению для эскизов от руки, автор: Пэн Сюй и др., ArXiv 2020. code
SketchTransfer: новая сложная задача по изучению инвариантности деталей и абстракций, изучаемых глубокими сетями Алекс Ламб, Шерджил Озаир, Викас Верма, Дэвид Ха, WACV 2020.
Глубокое обучение для рисования от руки: опрос Пэн Сюй, ArXiv 2020.
Новая модель распознавания эскизов, основанная на сверточных нейронных сетях, автор Абдулла Талха Кабакус, 2-й Международный конгресс по взаимодействию человека и компьютера, оптимизации и робототехническим приложениям, стр. 101-106, 2020 г.
Руководства и учебные пособия
Учебник TensorFlow по классификации чертежей
Обучите модель в tf.keras с помощью Colab и запустите ее в браузере с помощью TensorFlow.js от Заида Аляфеая.
Код и инструменты
Быстро, рисуй! Полимерные компоненты и API данных Ника Джонаса
«Быстро, нарисуй для обработки», Коди Бен Льюис
Быстро, рисуй! модель прогнозирования Кейсуке Ирие
Инструмент случайной выборки от Learning статистики — это здорово
Рендеринг SVG в примере d3.js от Яна Джонсона (подробнее о процессе читайте здесь)
Классификация Sketch-RNN от Payal Bajaj
Quickdraw.js от Томаса Вагенаара
~ Дудлер ~ Кришны Шри Сомепалли
Quickdraw API Python от Мартина О'Хэнлона
RealTime QuickDraw от Акшая Бахадура
Обработка DataFlow Гиллема Ксеркавинса
Плагин QuickDrawGH Rhino от Джеймса Далессандро
QuickDrawBattle от Андри Сун
25 мая 2017 г.: обновлен набор данных Sketch-RNN QuickDraw, созданы дополнительные наборы .full.npz
.
Эти данные предоставлены Google, Inc. по лицензии Creative Commons Attribution 4.0 International.
Следующая таблица необходима для индексации этого набора данных поисковыми системами, такими как Google Dataset Search.
свойство | ценить | ||||||
---|---|---|---|---|---|---|---|
имя | The Quick, Draw! Dataset | ||||||
альтернативное имя | Quick Draw Dataset | ||||||
альтернативное имя | quickdraw-dataset | ||||||
URL | https://github.com/googlecreativelab/quickdraw-dataset | ||||||
то же, что и | https://github.com/googlecreativelab/quickdraw-dataset | ||||||
описание | The Quick Draw Dataset is a collection of 50 million drawings across 345 categories, contributed by players of the game "Quick, Draw!". The drawings were captured as timestamped vectors, tagged with metadata including what the player was asked to draw and in which country the player was located.n n Example drawings: ![preview](https://raw.githubusercontent.com/googlecreativelab/quickdraw-dataset/master/preview.jpg) | ||||||
поставщик |
| ||||||
лицензия |
|