Для начала работы с библиотекой ml5.js необходимо
подключить её в проект. Наиболее простой способ — использование CDN. В
HTML-файле добавляется следующий тег в секцию
<head>:
<script src="https://cdn.jsdelivr.net/npm/ml5@latest/dist/ml5.min.js"></script>
После этого библиотека становится доступной через объект
ml5 в JavaScript. Проверка успешного подключения
производится простой командой в консоли:
console.log(ml5.version);
Если версия библиотеки отображается корректно, подключение выполнено успешно.
Для запуска проектов удобно использовать локальный сервер. В браузере
напрямую из файловой системы некоторые функции ml5.js, например работа с
камерой или загрузка моделей, могут быть ограничены политиками
безопасности. Локальный сервер можно поднять с помощью
Live Server в VS Code или командой
python -m http.server в терминале.
ml5.js предоставляет множество моделей и утилит для машинного обучения. После подключения библиотеки рекомендуется убедиться, что базовые функции работают. Например, проверка доступности модели для классификации изображений:
if (ml5.imageClassifier) {
console.log("Классический классификатор изображений доступен");
}
Аналогично можно проверить другие модели, такие как
poseNet, handpose, textGenerator
или soundClassifier. Это помогает убедиться, что библиотека
загружена полностью и готова к использованию.
Для проверки работоспособности можно создать минимальный пример с
классификацией изображения. Сначала загружается модель
MobileNet, которая подходит для тестовых задач благодаря
своей небольшой нагрузке на устройство:
let classifier;
function setup() {
noCanvas(); // Вспомогательная функция библиотеки p5.js
classifier = ml5.imageClassifier('MobileNet', modelReady);
}
function modelReady() {
console.log('Модель загружена и готова к работе');
const img = document.getElementById('testImage');
classifier.classify(img, gotResult);
}
function gotResult(error, results) {
if (error) {
console.error(error);
return;
}
console.log(results);
}
В этом примере происходит:
modelReady.ml5.js позволяет использовать камеру для работы с моделями в реальном
времени. Для проверки работоспособности достаточно создать простую
демонстрацию, используя Video и
imageClassifier:
let video;
let classifier;
function setup() {
createCanvas(640, 480);
video = createCapture(VIDEO);
video.hide();
classifier = ml5.imageClassifier('MobileNet', video, modelReady);
}
function modelReady() {
console.log('Модель для камеры готова');
classifyVideo();
}
function classifyVideo() {
classifier.classify(gotResult);
}
function gotResult(error, results) {
if (error) {
console.error(error);
return;
}
console.log(results);
classifyVideo(); // Постоянная классификация каждого кадра
}
Здесь важные моменты:
video, полученный через
createCapture.video.hide()), чтобы выводить только
результат классификации.classifyVideo рекурсивно вызывает классификацию
для каждого кадра.При работе с ml5.js важно учитывать возможные ошибки:
https:// или
localhost).ml5 имел доступ к функциям p5.js.Для диагностики ошибок используются консольные сообщения и проверка объектов перед вызовом функций:
if (!classifier) {
console.error("Классификатор не инициализирован");
}
Для стабильной работы рекомендуется фиксировать версию ml5.js:
<script src="https://cdn.jsdelivr.net/npm/ml5@0.12.2/dist/ml5.min.js"></script>
Также стоит проверять совместимость с p5.js, особенно если используется визуализация или видео. Например, версии p5.js 1.x полностью поддерживаются ml5.js последних версий.
Для проверки работоспособности библиотеки можно выполнять следующие действия:
imageClassifier,
poseNet, soundClassifier).Такая последовательность гарантирует, что библиотека подключена корректно и готова к дальнейшей разработке.