Об этом проекте

NSFWJS — это мощная библиотека JavaScript, предназначенная для обнаружения неприемлемых или NSFW (Not Safe For Work) изображений непосредственно на стороне клиента с использованием TensorFlow.js. Она позволяет разработчикам интегрировать классификацию изображений в веб-приложения без отправки конфиденциальных изображений на сервер. Библиотека классифицирует изображения по пяти отдельным категориям: Drawing (безопасные для работы рисунки, включая аниме), Neutral (безопасные для работы нейтральные изображения), Porn (порнографические изображения), Sexy (сексуально откровенные, но не порнографические) и Hentai (порнографические рисунки). Ключевые особенности включают: - **Выполнение на стороне клиента**: Полностью работает в браузере пользователя, обеспечивая конфиденциальность и снижая нагрузку на сервер. - **Высокая точность**: Достигает примерно 90% точности с малыми моделями и 93% с моделями среднего размера. - **Несколько бэкендов**: Поддерживает бэкенды WebGPU, WebGL, WASM и CPU через TensorFlow.js для кросс-браузерной совместимости и производительности. - **Гибкая загрузка моделей**: Предлагает встроенные модели, такие как MobileNetV2, MobileNetV2Mid и InceptionV3, или позволяет пользователям размещать собственные модели для уменьшения размера пакета. - **Простой API**: Предоставляет простые методы, такие как `load()` для инициализации модели, `classify()` для анализа изображений (принимает элементы `<img>`, `<video>` или `<canvas>`) и `dispose()` для освобождения памяти. - **Поддержка Node.js**: Также может использоваться в серверных приложениях Node.js с помощью `@tensorflow/tfjs-node`. Библиотека распространяется под лицензией MIT и широко используется в проектах с открытым исходным кодом, например, в расширениях браузера для фильтрации NSFW-контента.