Busque las fotos. Este es un servidor de motores de búsqueda para escenas de animación. Puede buscar en reversa a través de capturas de pantalla de un momento determinado del anime, y en reversa, de qué episodio provenía y el momento exacto en que apareció. Front-end del sitio web
En comparación con Trace.MOE, este proyecto puede proporcionar servicios de búsqueda más robustos y precisos porque utiliza modelos de aprendizaje profundo para extraer características de imagen. Por lo tanto, la sobrecarga de rendimiento es mayor y la inclusión es más lenta. Todavía en la fase de prueba
Fotos de prueba
Resultados de la búsqueda
python3 debe instalarse ffmpeg
Instalar dependencias:
pip install bilibili_api imagehash tensorflow keras flask pymilvus opencv-python sklearn bilili
# Linux
pip install plyvel
# Windows
pip install plyvel-win32python run.pyconfig.jsonpython run.py download-bilibili # 将会处理已下载的视频
python run.py processpython app.pyEste método es solo para probar. Consulte el método de implementación de Flask para el entorno de producción
El siguiente ejemplo utiliza gunicorn , 4 Proceso de trabajadores ( -w 4 ) para ejecutar la aplicación Flask y se une al puerto 4000 de localhost ( -b 127.0.0.1:4000 ):
gunicorn -w 4 -b 127.0.0.1:4000 app:flask_appA través de la API de Bilibili (u otro sitio web), descargue automáticamente el drama e inicialmente guarde la información del drama.
Use FFMPEG para comprimir el video y convertirlo en MP4, y colóquelo en el directorio estático del sitio web
Use FFMPEG para convertir el video en una imagen a una tasa de muestreo determinada y colóquelo en un directorio temporal
Lea el marco de la imagen por marco, filtre imágenes similares adyacentes a través del algoritmo phash y extraiga los vectores de características utilizando el modelo e inserte en milvus . La información correspondiente de cada cuadro agregado se almacena en la base de datos leveldb , como id , time y epid
Al buscar, el vector de características de imagen también se extrae, se busca con milvus , devuelve id de marcos similares y luego consulta otra información a través de la base de datos.
Xception y la reducción de la dimensionalidad PCA crop.py of Trace.Moe