Video2X: Kerangka kerja interpolasi bingkai dan peningkatan video berkualitas tinggi
Editor kode sumber
Penting
Versi 4 dan 5 telah mencapai status end-of-life (EOL). Karena sumber daya pengembangan yang terbatas, masalah apa pun yang terkait dengan versi yang lebih rendah dari 6 tidak akan terselesaikan lagi.
Versi 6.0.0
Unduh penginstal Windows
Singkatnya: versi 6.0.0 adalah penulisan ulang lengkap proyek Video2X dalam C/C++, dengan arsitektur yang lebih cepat dan efisien, dukungan lintas platform, kualitas keluaran yang jauh lebih baik, dan fitur-fitur baru untuk kemudahan pengaturan pada GUI dan penginstal Windows .
Versi 6.0.0 adalah penulisan ulang proyek secara lengkap, diimplementasikan dalam C/C++ dan mencakup fitur-fitur berikut:
1. Arsitektur lebih cepat: Dengan memanfaatkan akselerasi multi-threading dan GPU, Video2X kini jauh lebih cepat dari sebelumnya.
2. Dukungan lintas platform: Video2X sekarang berjalan di Windows, Linux dan macOS.
3. Peningkatan kualitas keluaran: Video2X kini menawarkan kualitas peningkatan yang lebih tinggi, terutama untuk video resolusi tinggi.
4. GUI baru: Video2X kini dilengkapi GUI ramah pengguna yang menyederhanakan proses pengaturan dan penggunaan.
5. Penginstal Baru: Video2X kini menawarkan penginstal yang mudah digunakan yang membantu Anda menginstal perangkat lunak dengan cepat dan mudah di Windows.
Dukungan untuk RealCUGAN dan interpolasi bingkai menggunakan RIFE akan segera hadir.
Unduh versi Windows
Anda dapat mengunduh versi Windows terbaru dari halaman rilis. Untuk penggunaan GUI dasar, lihat halaman wiki GUI. Jika Anda tidak dapat mengunduh langsung dari GitHub, coba gunakan mirror. GUI saat ini mendukung bahasa berikut:
1. Bahasa Inggris
2. Bahasa Cina Sederhana
3. Cina Tradisional
4. Jepang
5. Korea
6. Perancis
7. Jerman
8. Italia
9. Spanyol
10. Portugis
11. Rusia
Instal di Linux
Anda dapat menginstal Video2X di Arch Linux menggunakan paket video2x-git, atau mengunduh binari yang telah dikompilasi dari halaman rilis. Jika Anda ingin membangun dari sumber, lihat file PKGBUILD untuk gambaran umum paket dan perintah yang diperlukan. Jika Anda tidak ingin mengkompilasi program Anda dari sumber, pertimbangkan untuk menggunakan gambar container di bawah.
gambar kontainer
Gambar kontainer Video2X tersedia di registri kontainer GitHub untuk kemudahan penerapan di Linux dan macOS. Jika Anda telah menginstal Docker/Podman, Anda dapat memulai amplifikasi video hanya dengan satu perintah. Untuk informasi lebih lanjut tentang cara menggunakan image Docker Video2X, lihat dokumentasi.
Google Colab (usang: 5.0.0-beta7)
Jika Anda tidak memiliki GPU yang kuat, Anda dapat menggunakan Video2X secara gratis di Google Colab. Anda dapat meminjam GPU bertenaga (NVIDIA T4, L4, atau A100) secara gratis di server Google hingga 12 jam per sesi. Harap gunakan sumber daya gratis secara wajar dan jangan membuat sesi berkelanjutan dan jalankan Zoom 24/7. Hal ini dapat menyebabkan Anda dilarang. Jika Anda ingin menggunakan GPU yang lebih baik dan waktu proses yang lebih lama, dapatkan Colab Pro/Pro+. Petunjuk penggunaan tertanam di notebook Colab.
Grup diskusi Telegram
Bergabunglah dengan grup diskusi Telegram kami untuk mengajukan pertanyaan apa pun tentang Video2X, mengobrol langsung dengan pengembangnya, atau mendiskusikan teknologi resolusi super dan masa depan Video2X.
dokumen
Dokumentasi untuk Video2X dihosting di halaman Wiki repositori ini. Ini mencakup instruksi komprehensif tentang cara menggunakan GUI, CLI, gambar container, perpustakaan, dan banyak lagi. Wiki terbuka untuk diedit oleh komunitas, jadi Anda, ya, juga dapat memperbaiki kesalahan atau menambahkan konten baru ke dokumentasi.
memperkenalkan
Video2X adalah kerangka kerja peningkatan video dan interpolasi bingkai berbasis pembelajaran mesin yang dibangun berdasarkan tiga komponen utama:
1. Model: Video2X menggunakan berbagai model pembelajaran mendalam tingkat lanjut untuk melakukan peningkatan dan interpolasi bingkai.
2. Mesin: Mesin Video2X bertanggung jawab untuk memproses data video, melakukan inferensi model, dan menghasilkan video keluaran.
3. Antarmuka: Video2X menyediakan berbagai antarmuka seperti GUI, CLI, dan gambar container untuk memungkinkan Anda menggunakan kerangka kerja dengan mudah.
Demonstrasi video
Perbesar: Trailer film Spirited Away
Cuplikan pengujian standar
Cuplikan berikut dapat digunakan untuk menguji apakah penyiapan Anda berfungsi dengan benar. Ini juga merupakan cuplikan standar untuk menjalankan tolok ukur kinerja.
Klip aslinya dari anime "The Pet Girl of Sakurasou".
Hak cipta klip ini adalah milik Amino Pulse Co., Ltd.
lisensi
Proyek ini dirilis di bawah lisensi GNU AGPL versi 3.
Hak Cipta (C) 2018-2024 K4YT3X dan kontributor.
Proyek ini mencakup atau bergantung pada proyek-proyek berikut:
1.opencv: https://github.com/opencv/opencv
2. waifu2x-caffe: https://github.com/nagadomi/waifu2x-caffe
3. ESRGAN Nyata: https://github.com/xinntao/Real-ESRGAN
4. BasicSR: https://github.com/xinntao/BasicSR
5. GFPGAN: https://github.com/TencentARC/GFPGAN
6. RIFE: https://github.com/hzwer/arXiv2021-RIFE
7. Anime4K: https://github.com/bloc97/Anime4K
Anda dapat menemukan informasi lisensi lebih lanjut di file PEMBERITAHUAN.
terima kasih khusus
Terima kasih khusus kepada individu-individu berikut atas kontribusi signifikan mereka terhadap proyek ini, sesuai urutan abjad:
1. K4YT3X: Pembuat Proyek
2. Kontributor: Terima kasih kepada semua orang yang berkontribusi pada proyek ini.
Misalnya:
Lisensi Apache-2.0
Daftar isi
Kerangka kerja deteksi objek Darknet dan YOLO
1. Kertas
2. Informasi umum
3. Versi Darknet
4. Beban pra-latihan MSCOCO
5. Membangun
1. Google Kolab
2. Metode CMake Linux
3. Metode Windows CMake
6. Gunakan Jaringan Gelap
1.KL
2. Pelatihan
7. Alat dan Tautan Lainnya
8. Peta Jalan
1. Tujuan jangka pendek
2. Tujuan jangka menengah
3. Tujuan jangka panjang
Kerangka kerja deteksi objek Darknet dan YOLO
Darknet adalah kerangka jaringan saraf sumber terbuka yang ditulis dalam C, C++ dan CUDA.
YOLO (You Only Look Once) adalah sistem deteksi objek real-time canggih yang berjalan dalam kerangka Darknet.
Baca bagaimana Hank.ai membantu komunitas Darknet/YOLO
Mengumumkan Darknet V3 “Jazz”
Kunjungi situs web Darknet/YOLO
Silakan baca FAQ Darknet/YOLO
Bergabunglah dengan server Darknet/YOLO Discord
kertas
1. Kertas YOLOv7
2. Kertas berskala-YOLOv4
3. Kertas YOLOv4
4. Kertas YOLOv3
Informasi umum
Kerangka kerja Darknet/YOLO terus menjadi lebih cepat dan akurat dibandingkan kerangka kerja lain dan versi YOLO.
Kerangka kerja ini sepenuhnya gratis dan open source. Anda dapat mengintegrasikan Darknet/YOLO ke dalam proyek dan produk yang sudah ada (termasuk produk komersial) tanpa lisensi atau biaya.
Darknet V3 ("Jazz"), dirilis pada Oktober 2024, dapat menjalankan video kumpulan data LEGO secara akurat hingga 1000 FPS saat menggunakan GPU NVIDIA RTX 3090, yang berarti setiap frame video memerlukan waktu 1 milidetik atau kurang Secara internal dibaca, diubah ukurannya, dan diproses oleh Darknet/ YOLO.
Jika Anda memerlukan bantuan atau ingin berdiskusi tentang Darknet/YOLO, silakan bergabung dengan server Darknet/YOLO Discord: https://discord.gg/zSq8rtW
Versi CPU Darknet/YOLO dapat berjalan di perangkat sederhana seperti Raspberry Pi, server cloud dan colab, desktop, laptop, dan peralatan pelatihan kelas atas. Versi GPU Darknet/YOLO memerlukan GPU NVIDIA yang kompatibel dengan CUDA.
Darknet/YOLO diketahui berjalan di Linux, Windows, dan Mac. Lihat petunjuk pembuatan di bawah.
Versi jaringan gelap
Alat Darknet asli yang ditulis oleh Joseph Redmon pada tahun 2013-2017 tidak memiliki nomor versi. Kami pikir ini adalah versi 0.x.
Perpustakaan Darknet populer berikutnya yang dikelola oleh Alexei Bochkovskiy dari 2017-2021 juga tidak memiliki nomor versi. Kami pikir ini adalah versi 1.x.
Perpustakaan Darknet disponsori oleh Hank.ai dan dikelola oleh Stéphane Charette mulai tahun 2023 adalah perpustakaan pertama yang memiliki perintah versi. Dari tahun 2023 hingga akhir tahun 2024, ia kembali ke versi 2.x "OAK".
Tujuannya adalah untuk mengenal basis kode sambil meminimalkan fungsionalitas yang ada.
1. Menulis ulang langkah-langkah pembangunan sehingga sekarang kita dapat membangun di Windows dan Linux menggunakan CMake.
2. Konversi basis kode untuk menggunakan kompiler C++.
3. Chart.png yang ditingkatkan selama pelatihan.
4. Perbaikan bug dan optimalisasi terkait kinerja, terutama terkait pengurangan waktu yang diperlukan untuk melatih jaringan.
Cabang terakhir dari basis kode adalah versi 2.1 di cabang v2.
Tahap pengembangan selanjutnya dimulai pada pertengahan tahun 2024 dan akan dirilis pada bulan Oktober 2024. Perintah versi sekarang mengembalikan 3.x "JAZZ".
Jika Anda perlu menjalankan salah satu perintah ini, Anda selalu dapat melakukan checkout cabang v2 sebelumnya. Harap beri tahu kami sehingga kami dapat menyelidiki penambahan kembali perintah yang hilang.
1. Menghapus banyak perintah lama dan tidak terawat.
2. Melakukan banyak optimasi kinerja, baik selama pelatihan maupun inferensi.
3. Memodifikasi C API lama; aplikasi yang menggunakan Darknet API asli perlu melakukan sedikit modifikasi: https://darknetcv.ai/api/api.html
4. Darknet V3 C dan C++ API baru: https://darknetcv.ai/api/api.html
5. Aplikasi baru dan contoh kode dalam contoh src: https://darknetcv.ai/api/files.html
Anak angkat beban MSCOCO yang telah dilatih sebelumnya
Untuk kenyamanan, beberapa versi YOLO yang populer telah dilatih sebelumnya pada kumpulan data MSCOCO. Dataset berisi 80 kategori dan dapat dilihat pada file teks cfg/coco.names.
Ada beberapa kumpulan data sederhana dan anak timbangan terlatih lainnya yang tersedia untuk pengujian Darknet/YOLO, seperti LEGO Gears dan Rolodex. Untuk informasi lebih lanjut, lihat FAQ Darknet/YOLO.
Anak timbangan terlatih MSCOCO dapat diunduh dari beberapa lokasi berbeda dan juga dapat diunduh dari repo ini:
1. YOLOv2, November 2016
1. YOLOv2-kecil
2.YOLOv2-penuh
2. YOLOv3, Mei 2018
1. YOLOv3-kecil
2.YOLOv3-penuh
3. YOLOv4, Mei 2020
1.YOLOv4-kecil
2. YOLOv4-penuh
4. YOLOv7, Agustus 2022
1. YOLOv7-kecil
2. YOLOv7-penuh
Anak timbangan MSCOCO yang telah dilatih sebelumnya hanya untuk tujuan demonstrasi. File .cfg dan .names yang sesuai untuk MSCOCO terletak di direktori cfg. Contoh perintah:
' pesta
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.names yolov4-tiny.cfg yolov4-tiny.weights video1.avi
DarkHelp coco.nama yolov4-tiny.cfg yolov4-tiny.weights image1.jpg
DarkHelp coco.nama yolov4-tiny.cfg yolov4-tiny.weights video1.avi
`
Perhatikan bahwa seseorang harus melatih jaringannya sendiri. MSCOCO biasanya digunakan untuk memastikan bahwa semuanya berfungsi dengan baik.
membangun
Berbagai metode pembangunan yang tersedia di masa lalu (sebelum tahun 2023) telah digabungkan menjadi satu solusi terpadu. Darknet memerlukan C++17 atau lebih tinggi, OpenCV, dan menggunakan CMake untuk menghasilkan file proyek yang diperlukan.
Anda tidak perlu mengetahui C++ untuk membangun, menginstal, atau menjalankan Darknet/YOLO, sama seperti Anda tidak perlu menjadi mekanik untuk mengendarai mobil.
Google Kolab
Petunjuk Google Colab sama dengan petunjuk Linux. Ada beberapa notebook Jupyter yang tersedia yang memperlihatkan cara melakukan tugas tertentu, seperti melatih jaringan baru.
Lihat notebook di subdirektori colab, atau ikuti petunjuk Linux di bawah.
Metode CMake Linux
Tutorial pembuatan Darknet untuk Linux
Opsional: Jika Anda memiliki GPU NVIDIA modern, Anda dapat menginstal CUDA atau CUDA+cuDNN saat ini. Jika dipasang, Darknet akan menggunakan GPU Anda untuk mempercepat pemrosesan gambar (dan video).
Anda harus menghapus file CMakeCache.txt dari direktori build Darknet untuk memaksa CMake menemukan kembali semua file yang diperlukan.
Ingatlah untuk membangun kembali Darknet.
Darknet dapat dijalankan tanpanya, tetapi jika Anda ingin melatih jaringan khusus, Anda memerlukan CUDA atau CUDA+cuDNN.
Kunjungi https://developer.nvidia.com/cuda-downloads untuk mengunduh dan menginstal CUDA.
Kunjungi https://developer.nvidia.com/rdp/cudnn-download atau https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#cudnn-package-manager-installation-overview untuk mengunduh dan Instal cuDNN.
Setelah menginstal CUDA, pastikan Anda dapat menjalankan nvcc dan nvidia-smi. Anda mungkin perlu mengubah variabel PATH.
Jika Anda kemudian menginstal CUDA atau CUDA+cuDNN, atau jika Anda mengupgrade ke versi perangkat lunak NVIDIA yang lebih baru:
Petunjuk ini mengasumsikan (tetapi tidak mengharuskan!) bahwa sistem menjalankan Ubuntu 22.04. Jika Anda menggunakan distribusi lain, sesuaikan sesuai kebutuhan.
' pesta
sudo apt-get install build-essential git libopencv-dev cmake
mkdir ~/srccd ~/src
git klon https://github.com/hank-ai/darknet
cd darknet
mkdir membangun
pembuatan cd
cmake -DCMAKEBUILDTYPE=Lepaskan ..
buat paket -j4
sudo dpkg -i darknet-VERSION.deb
`
Jika Anda menggunakan CMake versi lama, Anda perlu memutakhirkan CMake untuk menjalankan perintah cmake di atas. Upgrade CMake di Ubuntu dapat dilakukan dengan perintah berikut:
' pesta
sudo apt-get pembersihan cmake
sudo snap install cmake --klasik
`
Jika Anda menggunakan bash sebagai shell perintah, Anda perlu me-restart shell Anda saat ini. Jika Anda menggunakan ikan, ia harus segera mengambil jalur baru.
Pengguna tingkat lanjut:
Jika Anda ingin membuat file instalasi RPM dan bukan file DEB, lihat baris yang relevan di CM_package.cmake. Sebelum menjalankan paket make -j4 Anda perlu mengedit dua baris ini:
' pesta
SET (CPACKGENERATOR "DEB")# SET (CPACKGENERATOR "RPM")
`
Untuk distribusi seperti Centos dan OpenSUSE, Anda perlu mengganti dua baris ini di CM_package.cmake ke:
' pesta
SET (CPACK_GENERATOR "DEB")
SET (CPACK_GENERATOR "RPM")
`
Untuk menginstal sebuah paket, gunakan manajer paket reguler distribusi Anda setelah selesai dibuat. Misalnya pada sistem berbasis Debian seperti Ubuntu:
' pesta
sudo dpkg -i darknet-2.0.1-Linux.deb
`
Menginstal paket .deb akan menyalin file berikut:
1. /usr/bin/darknet adalah file eksekusi Darknet biasa. Jalankan versi darknet dari CLI untuk mengonfirmasi bahwa versi tersebut telah diinstal dengan benar.
2. /usr/include/darknet.h adalah API Darknet untuk pengembang C, C++ dan Python.
3. /usr/include/darknet_version.h berisi informasi versi untuk pengembang.
4. /usr/lib/libdarknet.so adalah perpustakaan untuk ditautkan oleh pengembang C, C++ dan Python.
5. /opt/darknet/cfg/... adalah tempat semua template .cfg disimpan.
Anda sudah selesai sekarang! Darknet dibangun dan diinstal ke /usr/bin/. Jalankan perintah berikut untuk menguji: versi darknet.
Jika Anda tidak memiliki /usr/bin/darknet, Anda tidak menginstalnya, Anda hanya membuatnya! Pastikan untuk menginstal file .deb atau .rpm seperti dijelaskan di atas.
Metode Windows CMake
Petunjuk ini mengasumsikan Anda memiliki instalasi Windows 11 22H2 yang bersih.
Buka jendela prompt perintah cmd.exe biasa dan jalankan perintah berikut:
' pesta
dapatkan instal Git.Git
winget instal Kitware.CMake
winget instal nsis.nsis
winget instal Microsoft.VisualStudio.2022.Community
`
Pada titik ini, kita perlu memodifikasi instalasi Visual Studio untuk menyertakan dukungan untuk aplikasi C++:
1. Klik menu Start Windows dan jalankan Visual Studio Installer.
2. Klik Sunting.
3. Pilih pengembangan desktop menggunakan C++.
4. Klik Edit di pojok kanan bawah, lalu klik Ya.
Setelah semuanya diunduh dan diinstal, klik lagi menu Start Windows dan pilih Prompt Perintah Pengembang untuk Visual Studio 2022. Jangan gunakan PowerShell untuk melakukan langkah-langkah ini, Anda akan mengalami masalah!
Pengguna tingkat lanjut:
Daripada menjalankan command prompt pengembang, Anda dapat masuk ke perangkat menggunakan command prompt normal atau ssh dan menjalankan "Program FilesMicrosoft Visual Studio2022CommunityCommon7ToolsVsDevCmd.bat" secara manual.
Setelah Anda menjalankan command prompt pengembang seperti dijelaskan di atas (bukan PowerShell!), jalankan perintah berikut untuk menginstal Microsoft VCPKG, yang kemudian akan digunakan untuk membangun OpenCV:
' pesta
CDC:
mkdir c:srccd c:src
git clone https://github.com/microsoft/vcpkg
cd vcpkg.dll
bootstrap-vcpkg.bat
.vcpkg.exe mengintegrasikan instalasi
.vcpkg.exe mengintegrasikan powershell.vcpkg.exe instal opencv[contrib,dnn,freetype,jpeg,openmp,png,webp,world]:x64-windows
`
Harap bersabar dengan langkah terakhir ini karena mungkin memerlukan waktu lama untuk dijalankan. Ini memerlukan pengunduhan dan pembuatan banyak hal.
Pengguna tingkat lanjut:
Perhatikan bahwa saat membuat OpenCV, Anda mungkin perlu menambahkan banyak modul opsional lainnya. Jalankan .vcpkg.exe search opencv untuk melihat daftar lengkapnya.
Opsional: Jika Anda memiliki GPU NVIDIA modern, Anda dapat menginstal CUDA atau CUDA+cuDNN saat ini. Jika dipasang, Darknet akan menggunakan GPU Anda untuk mempercepat pemrosesan gambar (dan video).
Anda harus menghapus file CMakeCache.txt dari direktori build Darknet untuk memaksa CMake menemukan kembali semua file yang diperlukan.
Ingatlah untuk membangun kembali Darknet.
Darknet dapat dijalankan tanpanya, tetapi jika Anda ingin melatih jaringan khusus, Anda memerlukan CUDA atau CUDA+cuDNN.
Kunjungi https://developer.nvidia.com/cuda-downloads untuk mengunduh dan menginstal CUDA.
Kunjungi https://developer.nvidia.com/rdp/cudnn-download atau https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#download-windows untuk mengunduh dan menginstal cuDNN.
Setelah menginstal CUDA, pastikan Anda dapat menjalankan nvcc.exe dan nvidia-smi.exe. Anda mungkin perlu mengubah variabel PATH.
Setelah mengunduh cuDNN, unzip dan salin direktori bin, include, dan lib ke C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/[version]/. Anda mungkin perlu menimpa beberapa file.
Jika Anda kemudian menginstal CUDA atau CUDA+cuDNN, atau jika Anda mengupgrade ke versi perangkat lunak NVIDIA yang lebih baru:
CUDA harus diinstal setelah Visual Studio. Jika Anda memutakhirkan Visual Studio, ingatlah untuk menginstal ulang CUDA.
Setelah semua langkah sebelumnya berhasil diselesaikan, Anda perlu mengkloning Darknet dan membangunnya. Pada langkah ini kita juga perlu memberi tahu CMake di mana vcpkg berada sehingga dapat menemukan OpenCV dan dependensi lainnya:
' pesta
cd c:src
git klon https://github.com/hank-ai/darknet.git
cd darknet
mkdir membangun
pembuatan cd
cmake -DCMAKEBUILDTYPE=Rilis -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=Rilis PACKAGE.vcxproj
`
Jika Anda menerima kesalahan tentang CUDA atau cuDNN DLL yang hilang (misalnya, cublas64_12.dll), salin file CUDA .dll secara manual ke direktori keluaran yang sama dengan Darknet.exe. Misalnya:
' pesta
salin "C:Program FilesNVIDIA GPU Computing ToolkitCUDAv12.2bin*.dll" src-cliRelease
`
(Ini adalah contohnya! Harap periksa untuk memastikan Anda menjalankan versi tersebut, dan jalankan perintah yang sesuai untuk versi yang telah Anda instal.)
Setelah menyalin file, jalankan kembali perintah msbuild.exe terakhir untuk menghasilkan paket instalasi NSIS:
' pesta
msbuild.exe /property:Platform=x64;Configuration=Rilis PACKAGE.vcxproj
`
Pengguna tingkat lanjut:
Perhatikan bahwa output dari perintah cmake adalah file solusi Visual Studio normal Darknet.sln. Jika Anda adalah pengembang perangkat lunak yang sering menggunakan Visual Studio GUI alih-alih msbuild.exe untuk membangun proyek, Anda dapat mengabaikan baris perintah dan memuat proyek Darknet di Visual Studio.
Anda sekarang seharusnya sudah menyiapkan file ini untuk dijalankan: C:srcDarknetbuildsrc-cliReleasedarknet.exe. Jalankan perintah berikut untuk menguji: Versi C:srcDarknetbuildsrc-cliReleasedarknet.exe.
Untuk menginstal Darknet, pustaka, menyertakan file, dan DLL yang diperlukan dengan benar, jalankan wizard instalasi NSIS yang dibuat pada langkah sebelumnya. Periksa file darknet-VERSION.exe di direktori build. Misalnya:
' pesta
darknet-2.0.31-win64.exe
`
Menginstal paket instalasi NSIS akan:
1. Buat direktori bernama Darknet, misalnya C:Program FilesDarknet.
2. Instal aplikasi CLI, darknet.exe, dan contoh aplikasi lainnya.
3. Instal file .dll pihak ketiga yang diperlukan, misalnya dari OpenCV.
4. Instal file Darknet .dll, .lib, dan .h yang diperlukan untuk menggunakan darknet.dll dari aplikasi lain.
5. Instal file templat .cfg.
Anda sudah selesai sekarang! Setelah wizard instalasi selesai, Darknet akan diinstal di C:Program FilesDarknet. Jalankan perintah berikut untuk menguji: C:Program FilesDarknetbindarknet.exe version.
Jika Anda tidak memiliki C:/Program Files/darknet/bin/darknet.exe, Anda tidak menginstalnya, Anda baru saja membuatnya! Pastikan untuk menyelesaikan setiap panel Wizard Instalasi NSIS seperti yang dijelaskan pada langkah sebelumnya.
Menggunakan Darknet
CLI
Berikut ini bukan daftar lengkap semua perintah yang didukung oleh Darknet.
Selain CLI Darknet, perhatikan juga CLI proyek DarkHelp, yang menyediakan CLI alternatif untuk Darknet/YOLO. DarkHelp CLI juga memiliki beberapa peningkatan yang tidak ditemukan di Darknet. Anda dapat menggunakan Darknet CLI dan DarkHelp CLI secara bersamaan, keduanya tidak eksklusif.
Untuk sebagian besar perintah yang ditampilkan di bawah, Anda memerlukan file .weights dengan file .names dan .cfg yang sesuai. Anda dapat melatih jaringan Anda sendiri (sangat disarankan!) atau mengunduh jaringan saraf yang telah dilatih orang lain dan tersedia secara gratis di Internet. Contoh kumpulan data pra-pelatihan meliputi:
1. LEGO Gears (temukan objek dalam gambar)
2. Rolodex (menemukan teks dalam gambar)
3. MSCOCO (deteksi target kategori standar 80)
Perintah yang harus dijalankan meliputi:
Daftar beberapa kemungkinan perintah dan opsi yang dapat dijalankan:
' pesta
bantuan darknet
`
Periksa versi:
' pesta
versi darknet
`
Gunakan gambar untuk membuat prediksi:
' pesta
V2
tes detektor darknet cars.data cars.cfg cars_best.weights image1.jpg
V3
darknet02displayannotatedimages mobil.cfg image1.jpg
Bantuan Gelap
DarkHelp mobil.cfg mobil.cfg mobil_best.weights image1.jpg
`
Koordinat keluaran:
' pesta
V2
detektor darknet menguji animal.data animal.cfg animalbest.weights -extoutput dog.jpg
V3
darknet01inference_images hewan anjing.jpg
Bantuan Gelap
DarkHelp --json animal.cfg animal.names animal_best.weights dog.jpg
`
Memproses video:
' pesta
V2
demo detektor darknet animal.data animal.cfg animalbest.weights -extoutput test.mp4
V3
darknet03display_videos animal.cfg test.mp4
Bantuan Gelap
DarkHelp animal.cfg animal.names animal_best.weights test.mp4
`
Membaca dari kamera web:
' pesta
V2
demo detektor darknet animal.data animal.cfg animal_best.weights -c 0
V3
darknet08display_webcam binatang
`
Simpan hasil ke video:
' pesta
V2
demo detektor darknet animal.data animal.cfg animalbest.weights test.mp4 -outfilename res.avi
V3
darknet05prosesvideoshewan multithread.cfg hewan.nama hewan_terbaik.tes bobot.mp4
Bantuan Gelap
DarkHelp animal.cfg animal.names animal_best.weights test.mp4
`
JSON:
' pesta
V2
demo detektor darknet hewan.data hewan.cfg hewanbest.weights test50.mp4 -jsonport 8070 -mjpegport 8090 -extoutput
V3
darknet06imagestojson hewan image1.jpg
Bantuan Gelap
DarkHelp --json animal.names animal.cfg animal_best.weights image1.jpg
`
Jalankan pada GPU tertentu:
' pesta
V2
demo detektor darknet animal.data animal.cfg animal_best.weights -i 1 test.mp4
`
Untuk memeriksa keakuratan jaringan saraf:
' pesta
peta detektor darknet Driving.data Driving.cfg Driving_best.weights ...
Nama Id Rata-rata Presisi TP FN FP TN Akurasi ErrorRate Precision Recall Spesifisitas FalsePosRate
-- ---- ------------ ------ ------ ------ ------ -------- --------- --------- ------ ---------- ----------
0 kendaraan 91,2495 32648 3903 5826 65129 0,9095 0,0905 0,8486 0,8932 0,9179 0,0821
1 sepeda motor 80,4499 2936 513 569 5393 0,8850 0,1150 0,8377 0,8513 0,9046 0,0954
2 sepeda 89,0912 570 124 104 3548 0,9475 0,0525 0,8457 0,8213 0,9715 0,0285
3 orang 76,7937 7072 1727 2574 27523 0,8894 0,1106 0,7332 0,8037 0,9145 0,0855
4 banyak kendaraan 64,3089 1068 509 733 11288 0,9087 0,0913 0,5930 0,6772 0,9390 0,0610
5 lampu hijau 86,8118 1969 239 510 4116 0,8904 0,1096 0,7943 0,8918 0,8898 0,1102
6 lampu kuning 82,0390 126 38 30 1239 0,9525 0,0475 0,8077 0,7683 0,9764 0,0236
7 lampu merah 94,1033 3449 217 451 4643 0,9237 0,0763 0,8844 0,9408 0,9115 0,0885
`
Untuk memeriksa akurasi mAP@IoU=75:
' pesta
detektor darknet peta animal.data animal.cfg animalbest.weights -iouthresh 0.75
`
Menghitung ulang titik jangkar paling baik dilakukan di DarkMark karena akan berjalan 100 kali berturut-turut dan memilih titik jangkar terbaik dari semua titik jangkar yang dihitung. Namun, jika Anda ingin menjalankan versi lama di Darknet:
' pesta
detektor darknet calcanchors animal.data -numof_clusters 6 -width 320 -height 256
`
Latih jaringan baru:
' pesta
detektor darknet -peta -dont_show melatih hewan.data hewan.cfg
`
(Lihat juga bagian pelatihan di bawah)
kereta
Tautan cepat ke bagian yang relevan dari FAQ Darknet/YOLO:
1. Bagaimana cara mengatur file dan direktori saya?
2. Profil mana yang harus saya gunakan?
3. Perintah apa yang harus saya gunakan saat melatih jaringan saya sendiri?
Cara termudah untuk membuat semua file Darknet, anotasi, dan pelatihan yang diperlukan menggunakan DarkMark. Ini jelas merupakan cara yang disarankan untuk melatih jaringan saraf baru.
Jika Anda ingin mengatur berbagai file secara manual untuk melatih jaringan khusus:
1. Buat folder baru untuk menyimpan file. Untuk contoh ini, Anda akan membuat jaringan saraf untuk mendeteksi hewan, sehingga direktori berikut akan dibuat: ~/nn/animals/.
2. Copy salah satu file konfigurasi Darknet yang ingin digunakan sebagai template. Misalnya, lihat cfg/yolov4-tiny.cfg. Tempatkan di folder yang Anda buat. Dalam contoh ini, kita sekarang memiliki ~/nn/animals/animals.cfg.
3. Buat file teks animal.names di folder yang sama tempat Anda meletakkan file konfigurasi. Dalam contoh ini, kita sekarang memiliki ~/nn/animals/animals.names.
4. Gunakan editor teks Anda untuk mengedit file animal.names. Cantumkan kategori yang ingin Anda gunakan. Anda memerlukan tepat satu entri per baris, dan tidak ada baris atau komentar kosong. Dalam contoh ini, file .names akan berisi 4 baris:
`
anjing
kucing
burung
kuda
`
5. Buat file teks animal.data di folder yang sama. Dalam contoh ini, file .data akan berisi:
`
kelas=4
kereta=/home/nama pengguna/nn/animals/animals_train.txt
valid=/home/nama pengguna/nn/animals/animals_valid.txt
nama=/home/nama pengguna/nn/animals/animals.names
backup=/home/nama pengguna/nn/animals
`
6. Buat folder untuk menyimpan gambar dan anotasi Anda. Misalnya, ini bisa berupa ~/nn/animals/dataset. Setiap gambar memerlukan file .txt terkait yang menjelaskan anotasi untuk gambar tersebut. Format file komentar .txt sangat spesifik. Anda tidak dapat membuat file ini secara manual karena setiap anotasi harus berisi koordinat anotasi yang tepat. Lihat DarkMark atau perangkat lunak serupa lainnya untuk membuat anotasi pada gambar Anda. Format anotasi YOLO dijelaskan di FAQ Darknet/YOLO.
7. Buat file teks "train" dan "valid" yang diberi nama dalam file .data. Kedua file teks ini masing-masing harus mencantumkan semua gambar yang harus digunakan Darknet untuk pelatihan dan validasi (saat menghitung peta%). Tepat satu gambar per baris. Jalur dan nama file bisa bersifat relatif atau absolut.
8. Gunakan editor teks untuk memodifikasi file .cfg Anda.
9. Pastikan batch=64.
10. Perhatikan subdivisinya. Tergantung pada ukuran jaringan dan jumlah memori yang tersedia pada GPU, Anda mungkin perlu menambah subdivisi. Nilai terbaik untuk digunakan adalah 1, jadi mulailah dengan 1. Jika 1 tidak berhasil untuk Anda, lihat FAQ Darknet/YOLO.
11. Perhatikan bahwa maxbatches=.... Nilai yang baik untuk memulai adalah 2000 kali jumlah kategori. Dalam contoh ini kita mempunyai 4 hewan, jadi 4 * 2000 = 8000. Artinya kita akan menggunakan maxbatches=8000.
12. Catatan langkah=.... Ini harus diatur ke 80% dan 90% dari maxbatches. Dalam contoh ini, karena maxbatches disetel ke 8000, kita akan menggunakan langkah=6400,7200.
13. Perhatikan bahwa lebar=... dan tinggi=.... Ini adalah dimensi jaringan. FAQ Darknet/YOLO menjelaskan cara menghitung ukuran optimal untuk digunakan.
14. Cari bagian [convolutional] untuk semua baris class=... sebelum bagian [yolo] dan modifikasi dengan jumlah kelas dari file .names. Dalam contoh ini kita akan menggunakan kelas=4.
15. Cari semua baris filter=... di bagian [convolutional] sebelum setiap bagian [yolo]. Nilai yang digunakan adalah (jumlah kategori + 5) 3. Artinya dalam contoh ini, (4 + 5) 3 = 27. Oleh karena itu, kami menggunakan filter=27 pada baris yang sesuai.
Mulai pelatihan! Jalankan perintah berikut:
' pesta
cd ~/nn/hewan/
detektor darknet -peta -dont_show melatih hewan.data hewan.cfg
`
Harap tunggu. Bobot terbaik akan disimpan sebagai animal_best.weights. Anda dapat mengamati kemajuan pelatihan dengan melihat file chart.png. Lihat FAQ Darknet/YOLO untuk parameter tambahan yang mungkin ingin Anda gunakan saat melatih jaringan baru.
Jika Anda ingin melihat detail selengkapnya selama pelatihan, tambahkan parameter --verbose. Misalnya:
' pesta
detektor darknet -peta -dont_show --verbose melatih hewan.data hewan.cfg
`
Alat dan tautan lainnya
Untuk mengelola proyek Darknet/YOLO Anda, memberi anotasi pada gambar, memvalidasi anotasi Anda, dan menghasilkan file yang diperlukan untuk berlatih dengan Darknet, lihat DarkMark.
Untuk CLI alternatif yang kuat untuk Darknet, untuk menggunakan ubin gambar, pelacakan objek di video Anda, atau untuk C++ API yang kuat yang dapat dengan mudah digunakan dalam aplikasi komersial, lihat DarkHelp.
Lihat apakah FAQ Darknet/YOLO dapat membantu menjawab pertanyaan Anda.
Lihat banyak tutorial dan contoh video di saluran YouTube Stéphane
Jika Anda memiliki pertanyaan dukungan atau ingin mengobrol dengan pengguna Darknet/YOLO lainnya, silakan bergabung dengan server Darknet/YOLO Discord.
peta jalan
Terakhir diperbarui: 30-10-2024:
Selesai
1. Ganti qsort() yang digunakan selama pelatihan dengan std::sort()