Proxy de servicio/medio/borde de alto rendimiento nativo de la nube
Envoy está alojado en Cloud Native Computing Foundation (CNCF). Si usted es una empresa que desea ayudar a dar forma a la evolución de las tecnologías empaquetadas en contenedores, programadas dinámicamente y orientadas a microservicios, considere unirse a la CNCF. involucrados y cómo Envoy desempeña un papel, lea el anuncio de CNCF.
Documentación
Nota del editor de Downcodes: Envoy tiene documentación completa; puede consultar los siguientes recursos:
Documentación oficial
repositorio de GitHub
Relacionado
Nota del editor de Downcodes: Envoy está estrechamente relacionado con las siguientes tecnologías:
Tecnología de contenedores: Docker, Kubernetes
Malla de servicio: Istio, Linkerd
Arquitectura de microservicio: gRPC, API RESTful
Contacto
Nota del editor de Downcodes: Puede ponerse en contacto con la comunidad de Envoy a través de los siguientes canales:
lista de correo
canal flojo
Contribuyendo
Nota del editor de Downcodes: si desea contribuir con código al proyecto Envoy, consulte los siguientes pasos:
1. Familiarícese con el código base: lea el código fuente de Envoy para comprender su estructura y diseño.
2. Selecciona una tarea: Selecciona una tarea que te interese en el repositorio de GitHub.
3. Envíe el código: siga las especificaciones de estilo de codificación de Envoy y envíe su código.
Reunión comunitaria
Nota del editor de Downcodes: la comunidad Envoy se reúne dos veces al mes los martes a las 9 a. m., hora del Pacífico.
Calendario de Google
actas de la reunión
Nota del editor de Downcodes: cualquier miembro de la comunidad puede plantear un problema agregándolo a las actas de la reunión. El mantenedor confirmará el tema dentro de las 24 horas, o si la reunión no tiene temas confirmados, la reunión se cancelará dentro de las 24 horas anteriores a la hora de la reunión.
Seguridad
Nota del editor de Downcodes: El proyecto Envoy concede gran importancia a las cuestiones de seguridad.
Auditoría de seguridad
Nota del editor de Downcodes: el proyecto Envoy se ha sometido a múltiples auditorías de seguridad de terceros.
Informar vulnerabilidades de seguridad
Nota del editor de Downcodes: si descubre una vulnerabilidad de seguridad en el proyecto Envoy, envíe el informe de vulnerabilidad a [email protected]. Le enviaremos un correo electrónico de confirmación para confirmar su informe y le enviaremos correos electrónicos adicionales una vez que hayamos determinado si el problema existe.
Nota del editor de Downcodes: para obtener más información, consulte nuestro proceso completo de liberación segura.
Lanzamientos
Nota del editor de Downcodes: para obtener detalles sobre los lanzamientos de la versión de Envoy, consulte nuestro proceso de lanzamiento.
Ejemplo
`
Licencia Apache-2.0
Tabla de contenido
Marco de detección de objetos Darknet y YOLO
Papeles
Información general
Versión de la red oscura
Pesas preentrenadas MSCOCO
Edificio
colaboración de google
Método CMake de Linux
Método CMake de Windows
Usando la red oscura
CLI
Capacitación
Otras herramientas y enlaces
Hoja de ruta
Metas a corto plazo
Metas a medio plazo
Metas a largo plazo
Marco de detección de objetos Darknet y YOLO
!Logotipo de Darknet
!Hank.ai Logotipo
Nota del editor de Downcodes: Darknet es un marco de red neuronal de código abierto escrito en C, C++ y CUDA.
Nota del editor de Downcodes: YOLO (Solo miras una vez) es un sistema de detección de objetivos en tiempo real de última generación que se ejecuta en el marco Darknet.
Nota del editor Downcodes: obtenga más información sobre cómo Hank.ai ayuda a la comunidad Darknet/YOLO.
Nota del editor de Downcodes: sitio web Darknet/YOLO
Nota del editor de códigos descendentes: preguntas frecuentes sobre Darknet/YOLO
Nota del editor de códigos descendentes: Darknet/YOLO Discord Server
Papeles
Nota del editor de Downcodes: los siguientes son algunos artículos sobre YOLO:
1. YOLOv7: enlace del artículo
2. Scaled-YOLOv4: enlace en papel
3. YOLOv4: enlace en papel
4. YOLOv3: enlace en papel
Información general
Nota del editor de Downcodes: El marco Darknet/YOLO es más rápido y preciso que otros marcos y versiones de YOLO.
Nota del editor Downcodes: el marco es completamente gratuito y de código abierto. Puede integrar Darknet/YOLO en proyectos y productos existentes, incluidos productos comerciales, sin licencias ni tarifas.
Nota del editor de Downcodes: Darknet V3 ("Jazz") lanzado en octubre de 2024 puede ejecutar con precisión videos del conjunto de datos de LEGO a hasta 1000 FPS, lo que significa que cada fotograma de video dura 1 milisegundo cuando se usa una GPU NVIDIA RTX 3090 o se puede leer, cambiar de tamaño y procesar. por Darknet/YOLO en menos tiempo.
Nota del editor de Downcodes: si necesita ayuda o desea hablar sobre Darknet/YOLO, únase al servidor Darknet/YOLO Discord: https://discord.gg/zSq8rtW
Nota del editor de Downcodes: La versión CPU de Darknet/YOLO puede ejecutarse en dispositivos simples como Raspberry Pi, servidores en la nube y servidores Colab, computadoras de escritorio, portátiles y equipos de entrenamiento de alta gama. La versión GPU de Darknet/YOLO requiere una GPU con soporte NVIDIA CUDA.
Nota del editor Downcodes: Se sabe que Darknet/YOLO se ejecuta en Linux, Windows y Mac. Consulte las instrucciones de construcción a continuación.
Versión de la red oscura
Nota del editor de Downcodes: la herramienta Darknet original escrita por Joseph Redmon en 2013-2017 no tenía un número de versión. Consideramos que esta versión es 0.x.
Nota del editor de Downcodes: El próximo repositorio popular de Darknet mantenido por Alexey Bochkovskiy de 2017 a 2021 tampoco tiene un número de versión. Creemos que esta versión es 1.x.
Nota del editor de Downcodes: El repositorio Darknet patrocinado por Hank.ai y mantenido por Stéphane Charette desde 2023 es el primer repositorio con un comando de versión. Desde 2023 hasta finales de 2024 vuelve a la versión 2.x “OAK”.
Nota del editor de Downcodes: el objetivo es minimizar la interrupción de la funcionalidad existente y al mismo tiempo familiarizarse con el código base.
Nota del editor de Downcodes: se reescribieron los pasos de compilación para que tengamos una forma unificada de compilar en Windows y Linux usando CMake.
Nota del editor de Downcodes: convierta el código base para usar un compilador de C++.
Nota del editor de Downcodes: chart.png se mejoró durante el entrenamiento.
Nota del editor de Downcodes: las correcciones de errores y las optimizaciones relacionadas con el rendimiento están relacionadas principalmente con acortar el tiempo necesario para entrenar la red.
Nota del editor de Downcodes: la última rama de este código base es la versión 2.1 en la rama v2.
Nota del editor de Downcodes: la siguiente fase de desarrollo comienza a mediados de 2024 y se lanzará en octubre de 2024. El comando de versión ahora devuelve 3.x "JAZZ".
Nota del Editor de Downcodes: si necesita ejecutar uno de estos comandos, siempre puede consultar la rama v2 anterior. Háganos saber para que podamos investigar cómo volver a agregar los comandos que faltan.
Nota del editor de Downcodes: se eliminaron muchos comandos antiguos y sin mantenimiento.
Nota del editor de Downcodes: muchas optimizaciones de rendimiento, incluidas optimizaciones durante el entrenamiento y la inferencia.
Nota del editor de Downcodes: la antigua API C se ha modificado; las aplicaciones que utilizan la API Darknet original requieren algunas modificaciones menores: https://darknetcv.ai/api/api.html
Nota del editor de Downcodes: Nueva API Darknet V3 C y C++: https://darknetcv.ai/api/api.html
Nota del editor de códigos descendentes: nuevas aplicaciones y códigos de muestra en src-examples: https://darknetcv.ai/api/files.html
Pesas preentrenadas MSCOCO
Nota del editor de Downcodes: Para mayor comodidad, varias versiones populares de YOLO están previamente entrenadas para adaptarse al conjunto de datos MSCOCO. Este conjunto de datos tiene 80 categorías y se puede ver en el archivo de texto cfg/coco.names.
Nota del editor de Downcodes: existen otros conjuntos de datos más simples y pesos previamente entrenados que se pueden usar para probar Darknet/YOLO, como LEGO Gears y Rolodex. Para obtener más información, consulte las preguntas frecuentes sobre Darknet/YOLO.
Nota del editor de Downcodes: los pesos previamente entrenados de MSCOCO se pueden descargar desde varias ubicaciones diferentes o desde este repositorio:
1. YOLOv2, noviembre de 2016:
*YOLOv2-pequeño
*YOLOv2-completo
2. YOLOv3, mayo de 2018:
* YOLOv3-pequeño
*YOLOv3-completo
3. YOLOv4, mayo de 2020:
* YOLOv4-pequeño
*YOLOv4-completo
4. YOLOv7, agosto de 2022:
* YOLOv7-pequeño
*YOLOv7-completo
Nota del editor de Downcodes: los pesos previamente entrenados de MSCOCO son solo para fines de demostración. Los archivos .cfg y .names correspondientes a MSCOCO se encuentran en el directorio cfg. Comando de ejemplo:
`
wget --no-clobber https://github.com/hank-ai/darknet/releases/download/v2.0/yolov4-tiny.weights darknet02displayannotatedimages coco.names yolov4-tiny.cfg yolov4-tiny.weights image1.jpg darknet03display_videos coco.nombres yolov4-tiny.cfg yolov4-tiny.weights video1.avi DarkHelp coco.names yolov4-tiny.cfg yolov4-tiny.weights image1.jpg DarkHelp coco.names yolov4-tiny.cfg yolov4-tiny.weights video1.avi
`
Nota del editor de Downcodes: tenga en cuenta que las personas deben capacitar sus propias redes. MSCOCO se utiliza a menudo para confirmar que todo funciona correctamente.
Edificio
Nota del editor de Downcodes: varios métodos de compilación del pasado (antes de 2023) se han fusionado en una solución unificada. Darknet requiere C++ 17 o superior, OpenCV y usar CMake para generar los archivos de proyecto necesarios.
Nota del editor de Downcodes: no necesita saber C++ para compilar, instalar o ejecutar Darknet/YOLO, del mismo modo que no necesita ser mecánico para conducir un automóvil.
colaboración de google
Nota del editor de Downcodes: las instrucciones para Google Colab son las mismas que las de Linux. Hay varios cuadernos de Jupyter disponibles que muestran cómo realizar determinadas tareas, como entrenar una nueva red.
Nota del editor de Downcodes: consulte el cuaderno en el subdirectorio colab o siga las instrucciones de Linux a continuación.
Método CMake de Linux
Nota del editor de Downcodes: tutorial de compilación de Linux de Darknet
Nota del editor de Downcodes: Opcional: si tiene una GPU NVIDIA moderna, puede instalar CUDA o CUDA+cuDNN en este momento. Si está instalado, Darknet utilizará su GPU para acelerar el procesamiento de imágenes (y videos).
Nota del editor de Downcodes: debe eliminar el archivo CMakeCache.txt del directorio de compilación de Darknet para obligar a CMake a volver a encontrar todos los archivos necesarios.
Nota del editor de Downcodes: recuerde reconstruir Darknet.
Nota del editor de Downcodes: Darknet se puede ejecutar, pero si desea entrenar una red personalizada, necesita CUDA o CUDA+cuDNN.
Nota del editor de Downcodes: visite https://developer.nvidia.com/cuda-downloads para descargar e instalar CUDA.
Nota del editor de Downcodes: visite https://developer.nvidia.com/rdp/cudnn-download o https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#cudnn-package-manager- descripción general de la instalación Descargue e instale cuDNN.
Nota del editor de Downcodes: después de instalar CUDA, asegúrese de poder ejecutar nvcc y nvidia-smi. Es posible que deba modificar la variable PATH.
Nota del editor de Downcodes: si instala CUDA o CUDA+cuDNN más adelante, o actualiza a una versión más reciente del software NVIDIA:
Nota del Editor de Downcodes: estas instrucciones asumen (¡pero no requieren!) un sistema que ejecuta Ubuntu 22.04. Si está utilizando otra distribución, ajuste según sea necesario.
`golpear
sudo apt-get install build-essential git libopencv-dev cmake
mkdir ~/srccd ~/src
clon de git https://github.com/hank-ai/darknetcd red oscura
mkdir buildcd construir
cmake -DCMAKEBUILDTYPE=Lanzar ..
hacer el paquete -j4
sudo dpkg -i darknet-VERSIÓN.deb
`
Nota del editor de Downcodes: si está utilizando una versión anterior de CMake, debe actualizar CMake antes de ejecutar el comando cmake anterior. La actualización de CMake en Ubuntu se puede realizar con el siguiente comando:
`golpear
sudo apt-get purge cmakesudo snap install cmake --classic
`
Nota del editor de Downcodes: si está utilizando bash como su shell de comandos, deberá reiniciar su shell aquí. Si está utilizando pescado, debería seguir el nuevo camino inmediatamente.
Nota del editor de códigos descendentes: usuarios avanzados:
Nota del editor de Downcodes: si desea crear un archivo de instalación RPM en lugar de un archivo DEB, consulte las líneas relevantes en CM_package.cmake. Antes de ejecutar el paquete make -j4 necesitas editar estas dos líneas:
`
ESTABLECER (CPACKGENERATOR "DEB")# ESTABLECER (CPACKGENERATOR "RPM")
`
Nota del editor de Downcodes: para distribuciones como Centos y OpenSUSE, debe cambiar estas dos líneas en CM_package.cmake para:
`
CONFIGURAR (CPACKGENERATOR "DEB") CONFIGURAR (CPACKGENERATOR "RPM")
`
Nota del editor de Downcodes: Para instalar el paquete de instalación, una vez que haya terminado de compilarse, utilice el administrador de paquetes habitual de su distribución. Por ejemplo, en un sistema basado en Debian como Ubuntu:
`golpear
sudo dpkg -i darknet-2.0.1-Linux.deb
`
Nota del editor Downcodes: la instalación del paquete .deb copiará los siguientes archivos:
/usr/bin/darknet es el ejecutable habitual de Darknet. Ejecute la versión de darknet desde la CLI para confirmar que esté instalada correctamente.
/usr/include/darknet.h es la API Darknet, utilizada por desarrolladores de C, C++ y Python.
/usr/include/darknet_version.h contiene la información de la versión del desarrollador.
/usr/lib/libdarknet.so es una biblioteca para que los desarrolladores de C, C++ y Python se vinculen.
/opt/darknet/cfg/... es donde se almacenan todas las plantillas .cfg.
Nota del editor de Downcodes: ¡Ya has terminado! Darknet está construido e instalado en /usr/bin/. Ejecute el siguiente comando para probar: versión darknet.
Nota del editor de Downcodes: si no tienes /usr/bin/darknet, significa que no lo instalaste, ¡simplemente lo compilaste! Asegúrese de seguir los pasos anteriores para instalar el archivo .deb o .rpm.
Método CMake de Windows
Nota del editor de Downcodes: estas instrucciones suponen una instalación nueva de Windows 11 22H2.
Nota del editor de Downcodes: abra una ventana normal del símbolo del sistema cmd.exe y ejecute el siguiente comando:
`golpear
instalación de alas Git.Git
Instalación de Winget Kitware.CMake
instalación de alas nsis.nsis
Winget instala Microsoft.VisualStudio.2022.Community
`
Nota del editor Downcodes: en este punto, debemos modificar la instalación de Visual Studio para incluir soporte para aplicaciones C++:
1. Haga clic en el menú "Inicio de Windows" y ejecute "Configuración de Visual Studio".
2. Haga clic en Editar.
3. Elija desarrollo de escritorio usando C++.
4. Haga clic en Editar en la esquina inferior derecha, luego haga clic en Sí.
Nota del editor de Downcodes: una vez que todo esté descargado e instalado, haga clic nuevamente en el menú Inicio de Windows y seleccione Símbolo del sistema del desarrollador para VS 2022. ¡No utilice PowerShell para realizar estos pasos o pueden ocurrir problemas!
Nota del editor de códigos descendentes: usuarios avanzados:
Nota del editor de Downcodes: además de ejecutar el símbolo del sistema del desarrollador, también puede iniciar sesión en el dispositivo mediante un símbolo del sistema normal o ssh y ejecutar manualmente "Archivos de programa Microsoft Visual Studio2022 CommunityCommon7ToolsVsDevCmd.bat".
Nota del editor de Downcodes: una vez que ejecute el símbolo del sistema para desarrolladores anterior (¡no PowerShell!), ejecute el siguiente comando para instalar Microsoft VCPKG, que se utilizará para compilar OpenCV:
`golpear
cd c:mkdir c:srccd c:src
clon de git https://github.com/microsoft/vcpkgcd vcpkg
bootstrap-vcpkg.bat .vcpkg.exe instalación integrada
.vcpkg.exe integra powershell
.vcpkg.exe instalar opencv[contrib,dnn,freetype,jpeg,openmp,png,webp,world]:x64-windows
`
Nota del editor de Downcodes: tenga paciencia con este último paso, ya que puede tardar mucho en ejecutarse. Requiere descargar y crear muchas cosas.
Nota del editor de códigos descendentes: usuarios avanzados:
Nota del editor de Downcodes: tenga en cuenta que al crear OpenCV, es posible que necesite agregar muchos otros módulos opcionales. Ejecute .vcpkg.exe y busque opencv para ver la lista completa.
Nota del editor de Downcodes: Opcional: si tiene una GPU NVIDIA moderna, puede instalar CUDA o CUDA+cuDNN en este momento. Si está instalado, Darknet utilizará su GPU para acelerar el procesamiento de imágenes (y videos).
Nota del editor de Downcodes: debe eliminar el archivo CMakeCache.txt del directorio de compilación de Darknet para obligar a CMake a volver a encontrar todos los archivos necesarios.
Nota del editor de Downcodes: recuerde reconstruir Darknet.
Nota del editor de Downcodes: Darknet se puede ejecutar, pero si desea entrenar una red personalizada, necesita CUDA o CUDA+cuDNN.
Nota del editor de Downcodes: visite https://developer.nvidia.com/cuda-downloads para descargar e instalar CUDA.
Nota del editor de Downcodes: visite https://developer.nvidia.com/rdp/cudnn-download o https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#download-windows para descargar y Instale cuDNN.
Nota del editor Downcodes: después de instalar CUDA, asegúrese de poder ejecutar nvcc.exe y nvidia-smi.exe. Es posible que deba modificar la variable PATH.
Nota del editor de Downcodes: después de descargar cuDNN, descomprima y copie los directorios bin, include y lib en C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/[versión]/. Es posible que necesites sobrescribir algunos archivos.
Nota del editor de Downcodes: si instala CUDA o CUDA+cuDNN más adelante, o actualiza a una versión más reciente del software NVIDIA:
Nota del editor de Downcodes: CUDA debe instalarse después de Visual Studio. Si actualiza Visual Studio, recuerde reinstalar CUDA.
Nota del editor de Downcodes: una vez que todos los pasos anteriores se hayan completado con éxito, deberá clonar Darknet y compilarlo. En este paso también necesitamos decirle a CMake dónde se encuentra vcpkg para que pueda encontrar OpenCV y otras dependencias:
`golpear
cdc:src
clon de git https://github.com/hank-ai/darknet.gitcd darknet
mkdir buildcd construir
cmake -DCMAKEBUILDTYPE=Versión -DCMAKETOOLCHAINFILE=C:/src/vcpkg/scripts/buildsystems/vcpkg.cmake ..
msbuild.exe /property:Platform=x64;Configuration=Release /target:Build -maxCpuCount -verbosity:normal -detailedSummary darknet.sln
msbuild.exe /property:Platform=x64;Configuration=Versión PACKAGE.vcxproj
`
Nota del editor de Downcodes: si recibe un error sobre una DLL CUDA o cuDNN faltante (como cublas64_12.dll), copie manualmente el archivo CUDA .dll en el mismo directorio de salida que Darknet.exe. Por ejemplo:
`golpear
copie "C:Archivos de programaNVIDIA GPU Computing ToolkitCUDAv12.2bin*.dll" src-cliRelease
`
Nota del editor de Downcodes: (¡Este es un ejemplo! Verifique para asegurarse de qué versión está ejecutando y ejecute el comando apropiado para lo que ha instalado).
Nota del Editor de Downcodes: una vez copiados los archivos, vuelva a ejecutar el último comando msbuild.exe para generar el paquete de instalación de NSIS:
`golpear
msbuild.exe /property:Platform=x64;Configuration=Versión PACKAGE.vcxproj
`
Nota del editor de códigos descendentes: usuarios avanzados:
Nota del editor de Downcodes: tenga en cuenta que la salida del comando cmake es un archivo de solución normal de Visual Studio, Darknet.sln. Si es un desarrollador de software que utiliza con frecuencia la GUI de Visual Studio en lugar de msbuild.exe para crear proyectos, puede ignorar la línea de comando y cargar el proyecto Darknet en Visual Studio.
Nota del editor de Downcodes: ahora debería tener el siguiente archivo para ejecutar: C:srcDarknetbuildsrc-cliReleasedarknet.exe. Ejecute el siguiente comando para probar: C:srcDarknetbuildsrc-cliReleasedarknet.exe versión.
Nota del editor de Downcodes: para instalar correctamente Darknet, bibliotecas, archivos de inclusión y DLL necesarios, ejecute el asistente de instalación de NSIS integrado en el último paso. Consulte el archivo darknet-VERSION.exe en el directorio de compilación. Por ejemplo:
`golpear
darknet-2.0.31-win64.exe
`
Nota del editor de Downcodes: La instalación del paquete de instalación de NSIS:
Cree un directorio llamado Darknet, por ejemplo C:Program FilesDarknet.
Instale la aplicación CLI, darknet.exe y otras aplicaciones de muestra.
Instale los archivos .dll de terceros necesarios, como los de OpenCV.
Instale los archivos Darknet .dll, .lib y .h necesarios para usar darknet.dll desde otra aplicación.
Instale el archivo de plantilla .cfg.
Nota del editor de Downcodes: ¡Ya has terminado! Una vez completado el asistente de instalación, Darknet se instalará en C:Program FilesDarknet. Ejecute el siguiente comando para probar: C: Archivos de programa Versión Darknetbindarknet.exe.
Nota del editor de Downcodes: si no tiene C:/Program Files/darknet/bin/darknet.exe, significa que no lo instaló, ¡simplemente lo creó! Asegúrese de seguir cada panel del asistente de instalación de NSIS en el paso anterior.
Usando la red oscura
CLI
Nota del editor de Downcodes: La siguiente no es una lista completa de todos los comandos admitidos por Darknet.
Nota del editor de Downcodes: además de la CLI de Darknet, preste atención a la CLI del proyecto DarkHelp, que proporciona una CLI alternativa para Darknet/YOLO. DarkHelp CLI también tiene algunas funciones avanzadas que no se encuentran en Darknet. Puede utilizar Darknet CLI y DarkHelp CLI al mismo tiempo; no se excluyen mutuamente.
Nota del editor de Downcodes: para la mayoría de los comandos que se muestran a continuación, necesitará un archivo .weights con los archivos .names y .cfg correspondientes. Puede entrenar su propia red (¡muy recomendable!) o descargar redes neuronales de Internet que otros han entrenado y están disponibles gratuitamente. Ejemplos de conjuntos de datos previos al entrenamiento incluyen:
LEGO Gears (encuentra objetos en imágenes)
Rolodex (buscar texto en la imagen)
MSCOCO (detección de objetivos estándar de 80 categorías)
Nota del Editor de Downcodes: Los comandos a ejecutar incluyen:
1. Enumere algunos comandos y opciones que se pueden ejecutar:
`golpear
ayuda de la red oscura
`
2. Verificar versión:
`golpear
versión de la red oscura
`
3. Utilice imágenes para predecir:
* V2:
`golpear
Prueba del detector darknet cars.data cars.cfg cars_best.weights image1.jpg
`
*V3:
`golpear
darknet02displayimágenes anotadas cars.cfg image1.jpg
`
*Ayuda oscura:
`golpear
DarkHelp cars.cfg cars.cfg cars_best.weights imagen1.jpg
`
4. Coordenadas de salida:
* V2:
`golpear
prueba del detector darknet animales.datos animales.cfg animalesmejor.pesos -extoutput perro.jpg
`
*V3:
`golpear
darknet01inference_images animales perro.jpg
`
*Ayuda oscura:
`golpear
DarkHelp --json animales.cfg animales.nombres animales_mejores.pesos perro.jpg
`
5. Vídeo del proceso:
* V2:
`golpear
Demostración del detector darknet animales.datos animales.cfg animalesmejores.pesos -extoutput test.mp4
`
*V3:
`golpear
darknet03display_videos animales.cfg prueba.mp4
`
*Ayuda oscura:
`golpear
DarkHelp animales.cfg animales.nombres animales_mejores.pesos prueba.mp4
`
6. Lectura desde la cámara web:
* V2:
`golpear
Demostración del detector darknet animales.datos animales.cfg animales_best.weights -c 0
`
*V3:
`golpear
darknet08display_webcam animales
`
7. Guarde los resultados en vídeo:
* V2:
`golpear
demostración del detector darknet animales.datos animales.cfg animalesbest.pesos prueba.mp4 -outfilename res.avi
`
*V3:
`golpear
darknet05procesovideosmultiproceso animales.cfg animales.nombres animales_mejores.pesos prueba.mp4
`
*Ayuda oscura:
`golpear
DarkHelp animales.cfg animales.nombres animales_mejores.pesos prueba.mp4
`
8. JSON:
* V2:
`golpear
Demostración del detector darknet animales.datos animales.cfg animalesbest.weights test50.mp4 -jsonport 8070 -mjpegport 8090 -extoutput
`
*V3:
`golpear
darknet06imagestojson animales image1.jpg
`
*Ayuda oscura:
`golpear
DarkHelp --json animales.nombres animales.cfg animales_mejor.pesos imagen1.jpg
`
9. Ejecute en una GPU específica:
* V2:
`golpear
Demostración del detector darknet animales.datos animales.cfg animales_mejores.pesos -i 1 prueba.mp4
`
10. Verifique la precisión de la red neuronal:
`golpear
Mapa del detector de darknet conducción.datos conducción.cfg conducción_mejor.pesos...
Id. Nombre AvgPrecision TP FN FP TN Precisión ErrorRate Precisión Recuperación Especificidad FalsePosRate
-- ---- ------------ ------ ------ ------ ------ -------- --------- --------- ------ ---------- ----------
0 vehículo 91,2495 32648 3903 5826 65129 0,9095 0,0905 0,8486 0,8932 0,9179 0,0821
1 motocicleta 80,4499 2936 513 569 5393 0,8850 0,1150 0,8377 0,8513 0,9046 0,0954
2 bicicletas 89,0912 570 124 104 3548 0,9475 0,0525 0,8457 0,8213 0,9715 0,0285
3 personas 76,7937 7072 1727 2574 27523 0,8894 0,1106 0,7332 0,8037 0,9145 0,0855
4 muchos vehículos 64,3089 1068 509 733 11288 0,9087 0,0913 0,5930 0,6772 0,9390 0,0610
5 luz verde 86,8118 1969 239 510 4116 0,8904 0,1096 0,7943 0,8918 0,8898 0,1102
6 luz amarilla 82,0390 126 38 30 1239 0,9525 0,0475 0,8077 0,7683 0,9764 0,0236
7 luz roja 94,1033 3449 217 451 4643 0,9237 0,0763 0,8844 0,9408 0,9115 0,0885
`
11. Verifique la precisión mAP@IoU=75:
`golpear
Mapa del detector de darknet animales.datos animales.cfg animalesbest.weights -iouthresh 0,75
`
12. La mejor forma de volver a calcular los puntos de anclaje es en DarkMark, ya que se ejecuta 100 veces seguidas y selecciona el mejor punto de anclaje de todos los puntos de anclaje calculados. Pero si deseas ejecutar una versión anterior en Darknet:
`golpear
detector de red oscura calcanchors animales.data -numof_clusters 6 -ancho 320 -alto 256
`
13. Entrena la nueva red:
`golpear
detector de red oscura -mapa -dont_show entrenar animales.datos animales.cfg
`
(Consulte también la sección de capacitación a continuación)
Capacitación
Nota del editor de Downcodes: enlaces rápidos a partes relevantes de las preguntas frecuentes de Darknet/YOLO:
¿Cómo configuro mis archivos y directorios?
¿Qué perfil debo utilizar?
¿Qué comandos debo usar al entrenar mi propia red?
Nota del editor de Downcodes: utilizar DarkMark para crear todos los archivos Darknet necesarios es la forma más sencilla de etiquetar y entrenar. Esta es definitivamente la forma recomendada de entrenar nuevas redes neuronales.
Nota del editor de Downcodes: si desea configurar manualmente varios archivos para entrenar una red personalizada:
1. Cree una nueva carpeta para almacenar los archivos. Por ejemplo, se creará una red neuronal para detectar animales, por lo que se creará el siguiente directorio: ~/nn/animals/.
2. Copie un archivo de configuración de Darknet que desee utilizar como plantilla. Por ejemplo, consulte cfg/yolov4-tiny.cfg. Colóquelo en la carpeta que creó. Por ejemplo, ahora tenemos ~/nn/animals/animals.cfg.
3. Cree un archivo de texto animales.names en la misma carpeta donde colocó el archivo de configuración. Por ejemplo, ahora tenemos ~/nn/animals/animals.names.
4. Utilice un editor de texto para editar el archivo animales.nombres. Enumere las categorías que desea utilizar. Sólo necesita una entrada por línea, sin líneas en blanco ni comentarios. Por ejemplo, el archivo .names contendrá exactamente 4 líneas:
`
perro
gato
pájaro
caballo
`
5. Cree un archivo de texto animales.data en la misma carpeta. Por ejemplo, un archivo .data contendría:
`
clases=4
tren=/home/nombre de usuario/nn/animals/animals_train.txt
valid=/home/nombre de usuario/nn/animals/animals_valid.txt
nombres=/home/nombredeusuario/nn/animals/animals.nombres
copia de seguridad=/home/nombre de usuario/nn/animales
`
6. Cree una carpeta para almacenar sus imágenes y anotaciones. Por ejemplo, esto podría ser ~/nn/animals/dataset. Cada imagen requiere un archivo .txt correspondiente que describa las anotaciones de esa imagen. El formato del archivo de anotación .txt es muy específico. No puede crear estos archivos manualmente porque cada etiqueta debe contener las coordenadas precisas de la etiqueta. Consulte DarkMark u otro software similar para anotar sus imágenes. El formato de anotación de YOLO se describe en las preguntas frecuentes de Darknet/YOLO.
7. Cree archivos de texto "entrenables" y "válidos" nombrados en el archivo .data. Estos dos archivos de texto deben enumerar todas las imágenes utilizadas por Darknet para calcular el% de mAP durante el entrenamiento y la validación, respectivamente. Exactamente una imagen por fila. Las rutas y los nombres de archivos pueden ser relativos o absolutos.
8. Utilice un editor de texto para modificar su archivo .cfg.
9. Asegúrese de que el lote sea = 64.
10. Presta atención a las subdivisiones. Dependiendo del tamaño de la red y la cantidad de memoria disponible en la GPU, es posible que necesites aumentar las subdivisiones. El mejor valor para usar es 1, así que comience con eso. Si 1 no funciona para usted, consulte las preguntas frecuentes de Darknet/YOLO.
11. Nota maxbatches=..... Un buen valor para usar al principio es 2000 veces el número de clases. Por ejemplo, tenemos 4 animales, entonces 4 * 2000 = 8000. Esto significa que usaremos maxbatches=8000.
12. Anote los pasos =…. Esto debe establecerse en 80 % y 90 % de los lotes máximos. Por ejemplo, dado que maxbatches está configurado en 8000, usaremos pasos = 6400,7200.
13. Preste atención a ancho=... y alto=..... Estas son dimensiones de la red. Las preguntas frecuentes de Darknet/YOLO explican cómo calcular el tamaño óptimo a utilizar.
14. Busque todas las instancias que contengan la línea clases=... y modifíquela con el número de clases en el archivo .names. Por ejemplo, usaremos clases=4.
15. En la sección [convolucional] antes de cada sección [yolo]