UniGetUI (เดิมชื่อ WingetUI)
เครื่องมือแก้ไขของ Downcodes แนะนำให้คุณรู้จักกับ UniGetUI ซึ่งเป็นอินเทอร์เฟซ GUI ที่ใช้งานง่ายซึ่งสร้างขึ้นสำหรับผู้ใช้ Windows 10 และ 11 ซึ่งได้รับการออกแบบมาเพื่อทำให้การใช้งานตัวจัดการแพ็คเกจ CLI ทั่วไปง่ายขึ้น เช่น WinGet, Scoop, Chocolatey, Pip, Npm, .NET Tool และ PowerShell Gallery .
ฟังก์ชัน UniGetUI
ด้วย UniGetUI คุณสามารถดาวน์โหลด ติดตั้ง อัปเดต และถอนการติดตั้งซอฟต์แวร์ที่เผยแพร่บนตัวจัดการแพ็คเกจที่รองรับทั้งหมด และอื่นๆ อีกมากมายได้อย่างง่ายดาย!
ผู้จัดการแพ็คเกจรองรับโดย UniGetUI
โปรดตรวจสอบ "ตารางผู้จัดการแพ็คเกจที่รองรับ" เพื่อดูรายละเอียดเพิ่มเติม!
ข้อสงวนสิทธิ์
โครงการ UniGetUI ไม่มีการเชื่อมต่อกับตัวจัดการแพ็คเกจที่รองรับและไม่เป็นทางการโดยสิ้นเชิง โปรดทราบว่า Downcodes ซึ่งเป็นผู้พัฒนา UniGetUI จะไม่รับผิดชอบต่อซอฟต์แวร์ที่ดาวน์โหลด โปรดใช้ด้วยความระมัดระวัง!
สังเกต
เว็บไซต์อย่างเป็นทางการของ UniGetUI คือ https://www.marticliment.com/unigetui/ เว็บไซต์อื่นๆ ควรได้รับการพิจารณาว่าไม่เป็นทางการ ไม่ว่าพวกเขาจะพูดอะไรก็ตาม โดยเฉพาะอย่างยิ่ง wingetui.com ไม่ใช่เว็บไซต์อย่างเป็นทางการของ UniGetUI (เดิมชื่อ WingetUI)
สนับสนุนนักพัฒนา
การสนับสนุนของคุณมีความสำคัญต่อการพัฒนา UniGetUI อย่างต่อเนื่อง และได้รับการชื่นชมอย่างลึกซึ้งจากบรรณาธิการของ Downcodes ขอบคุณ!
สารบัญ
1. การติดตั้ง
มีหลายวิธีในการติดตั้ง UniGetUI โปรดเลือกวิธีการติดตั้งที่คุณต้องการ!
* การติดตั้ง Microsoft Store (แนะนำ)
คลิกที่นี่เพื่อดาวน์โหลดตัวติดตั้ง UniGetUI
* ติดตั้งผ่าน Winget
`ทุบตี
ติดตั้ง winget -- แน่นอน --id MartiCliment.UniGetUI --source winget
-
* ติดตั้งผ่าน Scoop
หมายเหตุ: ขณะนี้มีปัญหากับแพ็คเกจ Scoop ของ UniGetUI กรุณาอย่าติดตั้ง UniGetUI ผ่าน Scoop
`ทุบตี
# rem แพ็คเกจสกู๊ป UniGetUI ปัจจุบันใช้งานไม่ได้ โปรดอย่าติดตั้ง UniGetUI ผ่านสกู๊ปในขณะนี้
#เรมตักถังเพิ่มความพิเศษ
# rem Scoop ติดตั้งส่วนเสริม/wingetui
-
* ติดตั้งผ่าน Chocolatey
`ทุบตี
choco ติดตั้ง wingetui
-
2. อัปเดต UniGetUI
UniGetUI มีฟังก์ชันการอัพเดตอัตโนมัติในตัว อย่างไรก็ตาม คุณยังสามารถอัปเดตได้เหมือนกับแพ็คเกจอื่นๆ ใน UniGetUI (เนื่องจาก UniGetUI มีให้บริการผ่าน Winget และ Scoop)
3. ฟังก์ชั่น
* ผู้จัดการแพ็คเกจที่รองรับ
หมายเหตุ: ตัวจัดการแพ็คเกจทั้งหมดรองรับการติดตั้งพื้นฐาน อัพเดต และกระบวนการถอนการติดตั้ง เช่นเดียวกับการตรวจสอบการอัพเดต ค้นหาแพ็คเกจใหม่ และการดึงรายละเอียดจากแพ็คเกจ
|. ตัวจัดการแพ็คเกจ |. การสนับสนุน |
-
|. WinGet |. ✅ |
|. สกู๊ป |
|. ช็อคโกแลต |. ✅ |
|. ปิ๊บ |
|. Npm |. ✅ |
|. .NET เครื่องมือ |. ✅ |
|. แกลเลอรี PowerShell |
แสดงให้เห็น:
1. แพ็คเกจบางอย่างไม่รองรับการติดตั้งในตำแหน่งหรือขอบเขตที่กำหนดเอง และจะเพิกเฉยต่อการตั้งค่านี้
2. แม้ว่าตัวจัดการแพ็คเกจอาจไม่รองรับเวอร์ชันก่อนวางจำหน่าย แต่บางแพ็คเกจอาจถูกคัดลอก และหนึ่งในสำเนานั้นเป็นเวอร์ชันเบต้า
3. โปรแกรมติดตั้งบางตัวไม่มี GUI และจะเพิกเฉยต่อการตั้งค่าสถานะแบบโต้ตอบ
* แปล UniGetUI เป็นภาษาอื่น
หากต้องการแปล UniGetUI เป็นภาษาอื่นหรืออัปเดตการแปลเก่า โปรดดู UniGetUI Wiki สำหรับข้อมูลเพิ่มเติม
* ภาษาที่รองรับในปัจจุบัน
*อัปเดต: วันอังคารที่ 29 ต.ค. 00:13:19 2024
4. การบริจาค
UniGetUI จะเป็นไปไม่ได้หากไม่ได้รับความช่วยเหลือจากผู้ร่วมให้ข้อมูลที่รักของเรา จากบุคคลที่แก้ไขคำผิดไปจนถึงผู้ที่ปรับปรุงโค้ดเพียงครึ่งเดียว UniGetUI จะทำไม่ได้หากไม่มีความช่วยเหลือจากพวกเขา!
ผู้ร่วมให้ข้อมูล:
-
5. ภาพหน้าจอ
-
6. คำถามที่พบบ่อย
* ฉันไม่สามารถติดตั้งหรืออัพเกรดแพ็คเกจ Winget เฉพาะได้! ฉันจะทำอย่างไร?
นี่อาจเป็นปัญหากับ Winget มากกว่า UniGetUI โปรดตรวจสอบว่าสามารถติดตั้ง/อัปเกรดแพ็คเกจผ่าน PowerShell หรือพร้อมท์คำสั่งโดยใช้คำสั่ง อัปเกรด winget หรือติดตั้ง winget (ตามความเหมาะสม เช่น อัปเกรด winget --id Microsoft.PowerToys) หากไม่ได้ผล ให้ลองขอความช่วยเหลือในหน้าโครงการ Winget
* ชื่อแพ็กเกจถูกตัดทอนด้วยจุดไข่ปลา - จะดูชื่อเต็ม/ID ได้อย่างไร
นี่เป็นข้อจำกัดที่ทราบของ Winget ดูปัญหานี้สำหรับรายละเอียดเพิ่มเติม: microsoft/winget-cli#2603
* ซอฟต์แวร์ป้องกันไวรัสของฉันบอกฉันว่า UniGetUI เป็นไวรัส! /เบราว์เซอร์ของฉันบล็อกการดาวน์โหลด UniGetUI!
สาเหตุทั่วไปที่ทำให้แอปพลิเคชัน (เช่น ไฟล์ปฏิบัติการ) ถูกบล็อกและ/หรือตรวจพบว่าเป็นไวรัส แม้ว่าจะไม่มีโค้ดที่เป็นอันตราย เช่น UniGetUI ก็เนื่องมาจากมีคนใช้แอปพลิเคชันเหล่านี้ค่อนข้างน้อย นอกจากนั้น ความจริงที่ว่าคุณอาจกำลังดาวน์โหลดบางอย่างที่เพิ่งเปิดตัว และในหลาย ๆ กรณี การบล็อกแอปที่ไม่รู้จักถือเป็นการป้องกันมัลแวร์ที่ดี เนื่องจาก UniGetUI เป็นโอเพ่นซอร์สและปลอดภัยในการใช้งาน โปรดไวท์ลิสต์แอปพลิเคชันในการตั้งค่าของซอฟต์แวร์ป้องกันไวรัส/เบราว์เซอร์ของคุณ
* ถุง Winget/Scoop ปลอดภัยหรือไม่?
UniGetUI, Microsoft และ Scoop จะไม่รับผิดชอบต่อแพ็คเกจที่มีให้ดาวน์โหลด ซึ่งจัดทำโดยบุคคลที่สาม และในทางทฤษฎีแล้วอาจเสียหายได้ Microsoft ได้ดำเนินการตรวจสอบซอฟต์แวร์ที่มีอยู่ใน Winget เพื่อลดความเสี่ยงในการดาวน์โหลดมัลแวร์ อย่างไรก็ตาม ขอแนะนำให้คุณดาวน์โหลดซอฟต์แวร์จากผู้เผยแพร่ที่เชื่อถือได้เท่านั้น ตรวจสอบวิกิเพื่อดูข้อมูลเพิ่มเติม!
7. พารามิเตอร์บรรทัดคำสั่ง
ดูรายการพารามิเตอร์ทั้งหมดที่นี่
8. ตัวอย่าง
-
9. ใบอนุญาต
ใบอนุญาต Apache-2.0
กรอบการตรวจจับวัตถุ Darknet และ YOLO
โลโก้ !darknet และ hank.ai
Darknet เป็นเฟรมเวิร์กโครงข่ายประสาทเทียมแบบโอเพ่นซอร์สที่เขียนด้วยภาษา C, C++ และ CUDA
YOLO (คุณดูเพียงครั้งเดียว) เป็นระบบตรวจจับวัตถุแบบเรียลไทม์ที่ล้ำสมัยในกรอบงาน Darknet
อ่านวิธีที่ Hank.ai ช่วยเหลือชุมชน Darknet/YOLO
ประกาศ Darknet V3 "Jazz"
ตรวจสอบเว็บไซต์ Darknet/YOLO
โปรดอ่านคำถามที่พบบ่อยของ Darknet/YOLO
เข้าร่วมเซิร์ฟเวอร์ Discord ของ Darknet/YOLO
เอกสาร
กระดาษ YOLOv7
กระดาษปรับขนาด-YOLOv4
กระดาษ YOLOv4
กระดาษ YOLOv3
ข้อมูลทั่วไป
เฟรมเวิร์ก Darknet/YOLO นั้นเร็วกว่าและแม่นยำกว่าเฟรมเวิร์กอื่นและเวอร์ชัน YOLO
เฟรมเวิร์กนั้นฟรีและโอเพ่นซอร์สโดยสมบูรณ์ คุณสามารถรวม Darknet/YOLO เข้ากับโปรเจ็กต์และผลิตภัณฑ์ที่มีอยู่ รวมถึงผลิตภัณฑ์เชิงพาณิชย์ โดยไม่ต้องมีใบอนุญาตหรือค่าธรรมเนียม
Darknet V3 ("Jazz") เปิดตัวในเดือนตุลาคม 2024 สามารถรันวิดีโอชุดข้อมูล LEGO ได้อย่างแม่นยำที่สูงถึง 1,000 FPS เมื่อใช้ NVIDIA RTX 3090 GPU ซึ่งหมายความว่าแต่ละเฟรมวิดีโอจะใช้เวลา 1 มิลลิวินาทีหรือน้อยกว่าในการอ่าน ปรับขนาด และประมวลผล โดย Darknet/YOLO
หากคุณต้องการความช่วยเหลือหรือต้องการหารือเกี่ยวกับ Darknet/YOLO โปรดเข้าร่วมเซิร์ฟเวอร์ Discord ของ Darknet/YOLO: https://discord.gg/zSq8rtW
Darknet/YOLO เวอร์ชัน CPU สามารถทำงานบนอุปกรณ์ง่ายๆ เช่น Raspberry Pi, เซิร์ฟเวอร์คลาวด์และ colab, เดสก์ท็อป, แล็ปท็อป และอุปกรณ์การฝึกอบรมระดับไฮเอนด์ Darknet/YOLO เวอร์ชัน GPU ต้องใช้ GPU ที่รองรับ CUDA ของ NVIDIA
Darknet/YOLO เป็นที่รู้จักว่าทำงานบน Linux, Windows และ Mac ตรวจสอบคำแนะนำในการสร้างด้านล่าง
เวอร์ชันดาร์กเน็ต
เครื่องมือ Darknet ดั้งเดิมที่เขียนโดย Joseph Redmon ในปี 2556-2560 ไม่มีหมายเลขเวอร์ชัน เราคิดว่านี่คือเวอร์ชัน 0.x
พื้นที่เก็บข้อมูล Darknet ยอดนิยมถัดไปที่ดูแลระหว่างปี 2560-2564 โดย Alexey Bochkovskiy ยังไม่มีหมายเลขเวอร์ชันเช่นกัน เราคิดว่านี่คือเวอร์ชัน 1.x
พื้นที่เก็บข้อมูล Darknet ที่สนับสนุนโดย Hank.ai และดูแลโดยStéphane Charette ตั้งแต่ปี 2023 เป็นพื้นที่แรกที่มีคำสั่งเวอร์ชัน ตั้งแต่ปี 2023 ถึงสิ้นปี 2024 จะกลับมาเป็นเวอร์ชัน 2.x "OAK"
เป้าหมายคือการทำความคุ้นเคยกับฐานโค้ดโดยทำลายฟังก์ชันการทำงานที่มีอยู่ให้น้อยที่สุดเท่าที่จะเป็นไปได้
เขียนขั้นตอนการสร้างใหม่เพื่อให้เรามีวิธีการสร้างบน Windows และ Linux แบบครบวงจรโดยใช้ CMake
แปลงฐานโค้ดเพื่อใช้คอมไพเลอร์ C++
ปรับปรุง Chart.png ในระหว่างการฝึกอบรม
การแก้ไขข้อบกพร่องและการเพิ่มประสิทธิภาพที่เกี่ยวข้องกับประสิทธิภาพ ซึ่งส่วนใหญ่เกี่ยวข้องกับการลดเวลาที่ต้องใช้ในการฝึกอบรมเครือข่าย
สาขาสุดท้ายของฐานโค้ดนี้คือเวอร์ชัน 2.1 ในสาขา v2
การพัฒนาระยะต่อไปจะเริ่มในกลางปี 2567 และจะเปิดตัวในเดือนตุลาคม 2567 คำสั่ง version ส่งคืน 3.x "JAZZ"
หากคุณต้องการรันคำสั่งใดคำสั่งหนึ่งเหล่านี้ คุณสามารถชำระเงินสาขา v2 ก่อนหน้าได้ตลอดเวลา โปรดแจ้งให้เราทราบ เพื่อให้เราตรวจสอบการเพิ่มคำสั่งที่ขาดหายไปกลับเข้าไปได้
ลบคำสั่งเก่าและคำสั่งที่ไม่ได้รับการดูแลออกจำนวนมาก
การเพิ่มประสิทธิภาพการทำงานหลายอย่าง ทั้งในระหว่างการฝึกอบรมและการอนุมาน
C API เก่าได้รับการแก้ไขแล้ว แอปพลิเคชันที่ใช้ Darknet API ดั้งเดิมจำเป็นต้องมีการแก้ไขเล็กน้อย: https://darknetcv.ai/api/api.html
Darknet V3 C และ C++ API ใหม่: https://darknetcv.ai/api/api.html
แอปพลิเคชันใหม่และโค้ดตัวอย่างใน src-examples: https://darknetcv.ai/api/files.html
ตุ้มน้ำหนักฝึกหัด MSCOCO
เพื่อความสะดวก YOLO เวอร์ชันยอดนิยมหลายเวอร์ชันได้รับการฝึกอบรมล่วงหน้าในชุดข้อมูล MSCOCO ชุดข้อมูลนี้มี 80 หมวดหมู่และสามารถดูได้ในไฟล์ข้อความ cfg/coco.names
มีชุดข้อมูลที่เรียบง่ายกว่าและตุ้มน้ำหนักที่ได้รับการฝึกล่วงหน้าอื่นๆ หลายชุดสำหรับการทดสอบ Darknet/YOLO เช่น LEGO Gears และ Rolodex สำหรับข้อมูลเพิ่มเติม โปรดดูคำถามที่พบบ่อยของ Darknet/YOLO
สามารถดาวน์โหลดตุ้มน้ำหนักที่ฝึกล่วงหน้าของ MSCOCO ได้จากสถานที่ต่างๆ มากมาย และยังสามารถดาวน์โหลดได้จากพื้นที่เก็บข้อมูลนี้ด้วย:
YOLOv2 พฤศจิกายน 2559
*YOLOv2-จิ๋ว
*YOLOv2-เต็ม
YOLOv3 พฤษภาคม 2018
* YOLOv3-จิ๋ว
*YOLOv3-เต็ม
YOLOv4 พฤษภาคม 2020
* YOLOv4-จิ๋ว
*YOLOv4-เต็ม
YOLOv7 สิงหาคม 2022
* YOLOv7-จิ๋ว
*YOLOv7-เต็ม
ตุ้มน้ำหนักที่ฝึกล่วงหน้าของ MSCOCO มีไว้เพื่อการสาธิตเท่านั้น ไฟล์ .cfg และ .names ที่เกี่ยวข้องสำหรับ MSCOCO จะอยู่ในไดเร็กทอรี cfg คำสั่งตัวอย่าง:
`ทุบตี
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.names yolov4-tiny.cfg yolov4-tiny.weights image1.jpg DarkHelp coco.names yolov4-tiny.cfg yolov4-tiny.weights วิดีโอ1. เอวี
-
โปรดทราบว่าควรฝึกอบรมเครือข่ายของตนเอง MSCOCO มักจะใช้เพื่อยืนยันว่าทุกอย่างทำงานได้อย่างถูกต้อง
สร้าง
วิธีการสร้างต่างๆ ที่มีอยู่ในอดีต (ก่อนปี 2023) ได้ถูกรวมเข้าเป็นโซลูชันแบบครบวงจร Darknet ต้องการ C++17 หรือสูงกว่า, OpenCV และใช้ CMake เพื่อสร้างไฟล์โปรเจ็กต์ที่จำเป็น
คุณไม่จำเป็นต้องรู้ C++ เพื่อสร้าง ติดตั้ง หรือรัน Darknet/YOLO มากไปกว่าการเป็นช่างเครื่องในการขับรถ
Google Colab
คำแนะนำของ Google Colab เหมือนกับคำแนะนำของ Linux มีสมุดบันทึก Jupyter หลายเครื่องที่แสดงวิธีดำเนินการบางอย่าง เช่น การฝึกอบรมเครือข่ายใหม่
ตรวจสอบสมุดบันทึกในไดเรกทอรีย่อย colab หรือทำตามคำแนะนำของ Linux ด้านล่าง
วิธีการลินุกซ์ CMake
1. ติดตั้งการพึ่งพา
`ทุบตี
อัปเดต sudo apt-get
sudo apt-get ติดตั้ง build-essential git libopencv-dev cmake
-
2. โคลนพื้นที่เก็บข้อมูล Darknet
`ทุบตี
โคลนคอมไพล์ https://github.com/hank-ai/darknet.git
-
3. สร้างไดเร็กทอรีบิลด์
`ทุบตี
ซีดีดาร์กเน็ต
สร้าง mkdir
สร้างซีดี
-
4. ใช้ CMake เพื่อกำหนดค่าบิลด์
`ทุบตี
cmake -DCMAKEBUILDTYPE=ปล่อย ..
-
5. สร้าง Darknet
`ทุบตี
ทำ -j4
-
6. ติดตั้ง Darknet
`ทุบตี
sudo ทำการติดตั้ง
-
7. ทดสอบ Darknet
`ทุบตี
เวอร์ชันดาร์กเน็ต
-
วิธีการ Windows CMake
1. ติดตั้งการพึ่งพา
`ทุบตี
winget ติดตั้ง Git.Git
winget ติดตั้ง Kitware.CMake
ติดตั้ง winget nsis.nsis
winget ติดตั้ง Microsoft.VisualStudio.2022.Community
-
2. ติดตั้ง OpenCV
`ทุบตี
CDC:
mkdir C:src
ซีดี C:src
โคลนคอมไพล์ https://github.com/microsoft/vcpkg.git
ซีดี vcpkg
bootstrap-vcpkg.bat
.vcpkg.exe รวมการติดตั้ง
.vcpkg.exe รวม PowerShell
.vcpkg.exe ติดตั้ง opencv[contrib,dnn,freetype,jpeg,openmp,png,webp,world]:x64-windows
-
3. โคลนพื้นที่เก็บข้อมูล Darknet
`ทุบตี
ซีดี C:src
โคลนคอมไพล์ https://github.com/hank-ai/darknet.git
-
4. สร้างไดเร็กทอรีบิลด์
`ทุบตี
ซีดีดาร์กเน็ต
สร้าง mkdir
สร้างซีดี
-
5. ใช้ CMake เพื่อกำหนดค่าบิลด์
`ทุบตี
cmake -DCMAKEBUILDTYPE=Release -DCMAKETOOLCHAINFILE=C:srcvcpkgscriptsbuildsystemsvcpkg.cmake ..
-
6. สร้าง Darknet โดยใช้ Visual Studio
`ทุบตี
msbuild.exe /property:Platform=x64;Configuration=Release /target:Build -maxCpuCount -verbosity:normal -detailedSummary darknet.sln
-
7. สร้างแพ็คเกจการติดตั้ง NSIS
`ทุบตี
msbuild.exe /property:Platform=x64;Configuration=Release PACKAGE.vcxproj
-
8. เรียกใช้ Darknet
`ทุบตี
เวอร์ชัน C:srcdarknetbuildsrc-cliReleasedarknet.exe
-
การใช้ดาร์กเน็ต
คลีไอ
ต่อไปนี้ไม่ใช่รายการคำสั่งทั้งหมดที่ Darknet รองรับ
นอกจาก Darknet CLI แล้ว ยังมี CLI ของโปรเจ็กต์ DarkHelp ซึ่งมอบ CLI ทางเลือกให้กับ Darknet/YOLO DarkHelp CLI ยังมีคุณสมบัติขั้นสูงหลายประการที่ไม่พบใน Darknet คุณสามารถใช้ Darknet CLI และ DarkHelp CLI ร่วมกันได้ โดยไม่ได้แยกจากกัน
สำหรับคำสั่งส่วนใหญ่ที่แสดงด้านล่าง คุณจะต้องมีไฟล์ .weights และไฟล์ .names และ .cfg ที่เกี่ยวข้อง คุณสามารถฝึกเครือข่ายด้วยตัวเอง (ขอแนะนำอย่างยิ่ง!) หรือดาวน์โหลดโครงข่ายประสาทเทียมที่ผู้อื่นฝึกฝนและหาได้ฟรีบนอินเทอร์เน็ต ตัวอย่างของชุดข้อมูลก่อนการฝึกอบรมได้แก่:
LEGO Gears (ค้นหาวัตถุในภาพ)
Rolodex (ค้นหาข้อความในภาพ)
MSCOCO (การตรวจจับวัตถุมาตรฐานคลาส 80)
คำสั่งให้รันได้แก่:
แสดงรายการคำสั่งและตัวเลือกที่เป็นไปได้ที่สามารถรันได้:
ความช่วยเหลือจาก Darknet
ตรวจสอบเวอร์ชั่น:
เวอร์ชันดาร์กเน็ต
ใช้รูปภาพเพื่อทำนาย:
V2: การทดสอบเครื่องตรวจจับ darknet cars.data cars.cfg cars_best.weights image1.jpg
V3: darknet02displayannotatedimages cars.cfg image1.jpg
DarkHelp: DarkHelp cars.cfg cars.cfg cars_best.weights image1.jpg
พิกัดขาออก:
V2: การทดสอบเครื่องตรวจจับ darknetanimals.dataanimals.cfganimalbest.weights -extoutput dog.jpg
V3: darknet01inference_images สัตว์ dog.jpg
DarkHelp: DarkHelp --jsonanimals.cfganimals.namesanimals_best.weights dog.jpg
ใช้วิดีโอ:
V2: การสาธิตเครื่องตรวจจับ darknetanimals.dataanimals.cfganimalbest.weights -extoutput test.mp4
V3: darknet03display_videosanimals.cfg test.mp4
DarkHelp: DarkHelpanimals.cfganimals.namesanimals_best.weights test.mp4
อ่านจากเว็บแคม:
V2: การสาธิตเครื่องตรวจจับ darknetanimals.dataanimals.cfganimals_best.weights -c 0
V3: สัตว์ darknet08display_webcam
บันทึกผลลัพธ์ลงในวิดีโอ:
V2: การสาธิตเครื่องตรวจจับ darknetanimals.dataanimals.cfganimalbest.weights test.mp4 -outfilename res.avi
V3: darknet05processvideosmultithreadedanimals.cfganimals.namesanimals_best.weights test.mp4
DarkHelp: DarkHelpanimals.cfganimals.namesanimals_best.weights test.mp4
เจสัน:
V2: การสาธิตเครื่องตรวจจับ darknetanimals.dataanimals.cfganimalbest.weights test50.mp4 -jsonport 8070 -mjpegport 8090 -extoutput
V3: darknet06imagestojson สัตว์ image1.jpg
DarkHelp: DarkHelp --jsonanimals.namesanimals.cfganimals_best.weights image1.jpg
ทำงานบน GPU เฉพาะ:
V2: การสาธิตเครื่องตรวจจับ darknetanimals.dataanimals.cfganimals_best.weights -i 1 test.mp4
ตรวจสอบความถูกต้องของโครงข่ายประสาทเทียม:
`ทุบตี
แผนที่เครื่องตรวจจับ darknet การขับรถ.ข้อมูลการขับรถ.cfg Driving_best.weights ...
ชื่อรหัส AvgPrecision TP FN FP TN ความแม่นยำ อัตราข้อผิดพลาด ความจำเพาะในการเรียกคืนอย่างแม่นยำ FalsePosRate
-- ---- ------ ------ ------ ------ ------ -------- --------- --------- ------ ---------- ----------
0 คัน 91.2495 32648 3903 5826 65129 0.9095 0.0905 0.8486 0.8932 0.9179 0.0821
รถจักรยานยนต์ 1 คัน 80.4499 2936 513 569 5393 0.8850 0.1150 0.8377 0.8513 0.9046 0.0954
จักรยาน 2 คัน 89.0912 570 124 104 3548 0.9475 0.0525 0.8457 0.8213 0.9715 0.0285
3 คน 76.7937 7072 1727 2574 27523 0.8894 0.1106 0.7332 0.8037 0.9145 0.0855
จำนวน 4 คัน 64.3089 1068 509 733 11288 0.9087 0.0913 0.5930 0.6772 0.9390 0.0610
5 ไฟเขียว 86.8118 1969 239 510 4116 0.8904 0.1096 0.7943 0.8918 0.8898 0.1102
6 ไฟเหลือง 82.0390 126 38 30 1239 0.9525 0.0475 0.8077 0.7683 0.9764 0.0236
7ไฟแดง 94.1033 3449 217 451 4643 0.9237 0.0763 0.8844 0.9408 0.9115 0.0885
-
ตรวจสอบความแม่นยำ mAP@IoU=75:
แผนที่เครื่องตรวจจับ darknet Animals.data Animals.cfg Animalsbest.weights -iouthresh 0.75
การคำนวณจุดยึดใหม่ทำได้ดีที่สุดใน DarkMark เนื่องจากจะทำงาน 100 ครั้งติดต่อกัน และเลือกจุดยึดที่ดีที่สุดจากจุดยึดที่คำนวณทั้งหมด อย่างไรก็ตาม หากคุณต้องการใช้งานเวอร์ชันเก่าใน Darknet:
เครื่องตรวจจับ darknet calcanchors Animals.data -numof_clusters 6 - กว้าง 320 - สูง 256
ฝึกอบรมเครือข่ายใหม่:
เครื่องตรวจจับ darknet -map -dont_show รถไฟanimals.dataanimals.cfg (ดูหัวข้อการฝึกอบรมด้านล่าง)
รถไฟ
ลิงก์ด่วนไปยังส่วนที่เกี่ยวข้องของคำถามที่พบบ่อยเกี่ยวกับ Darknet/YOLO:
ฉันจะตั้งค่าไฟล์และไดเร็กทอรีของฉันได้อย่างไร?
ฉันควรใช้โปรไฟล์ใด
คุณควรใช้คำสั่งใดในการฝึกเครือข่ายของคุณเอง?
การใช้ DarkMark เพื่อสร้างไฟล์ Darknet ที่จำเป็นทั้งหมดเป็นวิธีที่ง่ายที่สุดในการใส่คำอธิบายประกอบและฝึกฝน นี่เป็นวิธีที่แนะนำในการฝึกโครงข่ายประสาทเทียมใหม่อย่างแน่นอน
หากคุณต้องการตั้งค่าไฟล์ต่างๆ ด้วยตนเองเพื่อฝึกเครือข่ายที่กำหนดเอง:
1. สร้างโฟลเดอร์ใหม่
สร้างโฟลเดอร์ใหม่เพื่อจัดเก็บไฟล์ ตัวอย่างเช่น คุณจะสร้างโครงข่ายประสาทเทียมเพื่อตรวจจับสัตว์ ดังนั้นให้สร้างไดเร็กทอรีต่อไปนี้: ~/nn/animals/
2. คัดลอกไฟล์การกำหนดค่า
คัดลอกไฟล์การกำหนดค่า Darknet ไฟล์ใดไฟล์หนึ่งที่คุณต้องการใช้เป็นเทมเพลต ตัวอย่างเช่น ดูที่ cfg/yolov4-tiny.cfg วางไว้ในโฟลเดอร์ที่คุณสร้างขึ้น ตัวอย่างเช่น ตอนนี้เรามี ~/nn/animals/animals.cfg
3. สร้างไฟล์ .names
สร้างไฟล์ข้อความanimals.namesในโฟลเดอร์เดียวกับที่คุณวางไฟล์การกำหนดค่า ตัวอย่างเช่น ตอนนี้เรามี ~/nn/animals/animals.names
4. แก้ไขไฟล์ .names
ใช้โปรแกรมแก้ไขข้อความเพื่อแก้ไขไฟล์animals.names ระบุหมวดหมู่ที่คุณต้องการใช้ ต้องมีหนึ่งรายการต่อบรรทัด ไม่มีบรรทัดว่าง และไม่มีความคิดเห็น ตัวอย่างเช่น ไฟล์ .names จะมี 4 บรรทัดพอดี:
-
สุนัข
แมว
นก
ม้า
-
5. สร้างไฟล์ .data
สร้างไฟล์ข้อความanimals.dataในโฟลเดอร์เดียวกัน ตัวอย่างเช่น ไฟล์ .data จะมี:
-
คลาส=4
train=/home/username/nn/animals/animals_train.txt
valid=/home/username/nn/animals/animals_valid.txt
ชื่อ=/home/ชื่อผู้ใช้/nn/animals/animals.names
backup=/home/username/nn/animals
-
6. สร้างโฟลเดอร์ชุดข้อมูล
สร้างโฟลเดอร์เพื่อจัดเก็บรูปภาพและคำอธิบายประกอบของคุณ ตัวอย่างเช่น นี่อาจเป็น ~/nn/animals/dataset รูปภาพแต่ละรูปต้องมีไฟล์ .txt ที่เกี่ยวข้องซึ่งอธิบายคำอธิบายประกอบสำหรับรูปภาพนั้น รูปแบบของไฟล์ความคิดเห็น .txt มีความเฉพาะเจาะจงมาก คุณไม่สามารถสร้างไฟล์เหล่านี้ด้วยตนเองได้ เนื่องจากคำอธิบายประกอบแต่ละรายการจำเป็นต้องมีพิกัดที่แม่นยำของคำอธิบายประกอบ ลองใช้ DarkMark หรือซอฟต์แวร์อื่นที่คล้ายคลึงกันเพื่อใส่คำอธิบายประกอบภาพของคุณ รูปแบบคำอธิบายประกอบ YOLO มีอธิบายอยู่ใน Darknet/YOLO FAQ
7. สร้างไฟล์ “train” และ “valid”
สร้างไฟล์ข้อความ "train" และ "valid" ที่มีชื่ออยู่ในไฟล์ .data ไฟล์ข้อความทั้งสองนี้จำเป็นต้องแสดงรายการรูปภาพทั้งหมดที่ Darknet ต้องใช้สำหรับการฝึกอบรมและการตรวจสอบความถูกต้องเมื่อคำนวณ mAP% ตามลำดับ หนึ่งภาพต่อแถว เส้นทางและชื่อไฟล์อาจเป็นแบบสัมพัทธ์หรือแบบสัมบูรณ์ก็ได้
8. แก้ไขไฟล์ .cfg
ใช้โปรแกรมแก้ไขข้อความเพื่อแก้ไขไฟล์ .cfg ของคุณ
* ตรวจสอบให้แน่ใจว่าชุด = 64
* ให้ความสนใจกับเขตการปกครอง ขึ้นอยู่กับขนาดเครือข่ายและจำนวนหน่วยความจำที่มีอยู่ใน GPU คุณอาจต้องเพิ่มการแบ่งย่อย ค่าที่เหมาะสมที่สุดคือ 1 ดังนั้นให้เริ่มด้วย 1 หาก 1 ไม่ได้ผลสำหรับคุณ โปรดดูคำถามที่พบบ่อยของ Darknet/YOLO
หมายเหตุ maxbatches=…. ค่าที่ดีในการเริ่มต้นคือ 2,000 เท่าของจำนวนหมวดหมู่ เช่น เรามีสัตว์ 4 ตัว ดังนั้น 4 2000 = 8000 ซึ่งหมายความว่าเราจะใช้ maxbatches=8000
* หมายเหตุขั้นตอน=…. ควรตั้งค่าเป็น 80% และ 90% ของ maxbatches ตัวอย่างเช่น เนื่องจาก maxbatches ตั้งไว้ที่ 8000 เราจะใช้ขั้นตอน = 6400,7200
* หมายเหตุ ความกว้าง=... และความสูง=.... นี่คือมิติเครือข่าย คำถามที่พบบ่อยเกี่ยวกับ Darknet/YOLO อธิบายวิธีคำนวณขนาดที่เหมาะสมที่สุดที่จะใช้
ในส่วน [convolutional] ก่อนแต่ละส่วน [yolo] ให้ค้นหาอินสแตนซ์ทั้งหมดของบรรทัด class=... และ filter=... ค่าที่ใช้คือ (numberofclasses + 5) 3. ซึ่งหมายความว่าสำหรับตัวอย่างนี้ (4 + 5) * 3 = 27 ดังนั้นเราจะใช้ตัวกรอง=27 ในบรรทัดที่เกี่ยวข้อง
9. เริ่มการฝึก
รันคำสั่งต่อไปนี้:
`ทุบตี
ซีดี ~/nn/สัตว์/
เครื่องตรวจจับ darknet -map -dont_show รถไฟanimals.dataanimals.cfg
-
จงอดทน ตุ้มน้ำหนักที่ดีที่สุดจะถูกบันทึกเป็นanimals_best.weights คุณสามารถติดตามความคืบหน้าของการฝึกอบรมได้โดยการดูไฟล์ Chart.png ดูคำถามที่พบบ่อยของ Darknet/YOLO สำหรับพารามิเตอร์เพิ่มเติมที่คุณอาจต้องการใช้เมื่อฝึกเครือข่ายใหม่
หากคุณต้องการดูรายละเอียดเพิ่มเติมระหว่างการฝึก ให้เพิ่มพารามิเตอร์ --verbose ตัวอย่างเช่น:
`ทุบตี
เครื่องตรวจจับ darknet -map -dont_show --verbose รถไฟanimals.dataanimals.cfg
-
เครื่องมือและลิงค์อื่นๆ
หากต้องการจัดการโปรเจ็กต์ Darknet/YOLO ของคุณ ใส่คำอธิบายประกอบรูปภาพ ตรวจสอบคำอธิบายประกอบของคุณ และสร้างไฟล์ที่จำเป็นสำหรับการฝึกอบรมกับ Darknet โปรดดูที่ DarkMark
หากต้องการ CLI ทางเลือกที่ทรงพลังแทน Darknet เพื่อใช้ต่อภาพ การติดตามวัตถุในวิดีโอ หรือใช้ C++ API อันทรงพลังที่สามารถใช้งานได้ง่ายในแอปพลิเคชันเชิงพาณิชย์ ลองดู DarkHelp
ลองอ่านคำถามที่พบบ่อยของ Darknet/YOLO เพื่อดูว่าสามารถช่วยตอบคำถามของคุณได้หรือไม่
ลองดูบทแนะนำและวิดีโอตัวอย่างมากมายในช่อง YouTube ของ Stéphane
หากคุณมีคำถามหรือต้องการสนทนากับผู้ใช้ Darknet/YOLO คนอื่นๆ โปรดเข้าร่วมเซิร์ฟเวอร์ Discord ของ Darknet/YOLO
แผนการทำงาน
อัปเดตล่าสุดเมื่อ 30-10-2024:
สมบูรณ์
แทนที่ qsort() ด้วย std::sort() ในระหว่างการฝึกอบรม (ยังมีความคลุมเครืออื่น ๆ อยู่)
ลบ check_mistakes, getchar() และ system()
แปลง Darknet เพื่อใช้คอมไพเลอร์ C++ (g++ บน Linux, Visual Studio บน Windows)
แก้ไขการสร้าง Windows
แก้ไขการสนับสนุน Python
สร้างไลบรารี Darknet
เปิดใช้งานป้ายกำกับอีกครั้งในการคาดคะเน (รหัส "ตัวอักษร")
เปิดใช้งานรหัส CUDA/GPU อีกครั้ง
เปิดใช้งาน CUDNN อีกครั้ง
เปิดใช้งาน CUDNN ครึ่งหนึ่งอีกครั้ง
อย่าฮาร์ดโค้ดสถาปัตยกรรม CUDA
ข้อมูลเวอร์ชัน CUDA ที่ดีขึ้น
เปิดใช้งาน AVX อีกครั้ง
ลบโซลูชันเก่าและ Makefile
ทำให้ OpenCV ไม่จำเป็น
ลบการพึ่งพาไลบรารี pthread เก่า
ลบ STB
เขียน CMakeLists.txt ใหม่เพื่อใช้เครื่องมือ CUDA ใหม่
ลบรหัส "ตัวอักษร" เก่าและลบรูปภาพมากกว่า 700 ภาพในข้อมูล/ป้ายกำกับ
สร้างนอกซอร์สโค้ด
มีเอาต์พุตหมายเลขเวอร์ชันที่ดีกว่า
การเพิ่มประสิทธิภาพการทำงานที่เกี่ยวข้องกับการฝึกอบรม (งานที่กำลังดำเนินอยู่)
การเพิ่มประสิทธิภาพการทำงานที่เกี่ยวข้องกับการอนุมาน (งานที่กำลังดำเนินอยู่)
ใช้การอ้างอิงตามค่าทุกครั้งที่เป็นไปได้
ทำความสะอาดไฟล์ .hpp
เขียน darknet.h ใหม่
อย่าแปลง cv::Mat เป็นโมฆะ แต่ให้ใช้เป็นวัตถุ C++ ที่เหมาะสมแทน
แก้ไขหรือรักษาการใช้โครงสร้างรูปภาพภายในให้สอดคล้องกัน
แก้ไขการสร้างสำหรับอุปกรณ์ Jetson ที่ใช้ ARM
*อุปกรณ์ Jetson ดั้งเดิมไม่น่าจะได้รับการแก้ไขเนื่องจากไม่รองรับโดย NVIDIA อีกต่อไป (ไม่มีคอมไพเลอร์ C ++ 17)
* อุปกรณ์ Jetson Orin ใหม่กำลังทำงานอยู่
แก้ไข Python API ใน V3
* ต้องการการสนับสนุน Python ที่ดีกว่า (มีนักพัฒนา Python คนใดบ้างที่ยินดีให้ความช่วยเหลือ)
เป้าหมายระยะสั้น
แทนที่ printf() ด้วย std::cout (อยู่ระหว่างดำเนินการ)
ตรวจสอบการสนับสนุนกล้อง zed เก่า
การแยกวิเคราะห์บรรทัดคำสั่งที่ดีขึ้นและสม่ำเสมอยิ่งขึ้น (อยู่ระหว่างดำเนินการ)
เป้าหมายระยะกลาง
ลบรหัสอักขระทั้งหมดและแทนที่ด้วย std::string
อย่าซ่อนคำเตือนและล้างคำเตือนของคอมไพเลอร์ (อยู่ระหว่างดำเนินการ)
ควรใช้ cv::Mat แทนโครงสร้างรูปภาพที่กำหนดเองใน C (อยู่ระหว่างดำเนินการ)
แทนที่ฟังก์ชันรายการเก่าด้วย std::vector หรือ std::list
แก้ไขการรองรับภาพระดับสีเทา 1 แชนเนล
เพิ่มการรองรับภาพ N-channel โดยที่ N > 3 (เช่น รูปภาพที่มีความลึกหรือช่องระบายความร้อนเพิ่มเติม)
การล้างโค้ดอย่างต่อเนื่อง (อยู่ระหว่างดำเนินการ)
เป้าหมายระยะยาว
แก้ไขปัญหา CUDA/CUDNN บน GPU ทั้งหมด
เขียนโค้ด CUDA+cuDNN ใหม่
ตรวจสอบการเพิ่มการรองรับสำหรับ GPU ที่ไม่ใช่ NVIDIA
กล่องขอบเขตแบบหมุนหรือการรองรับ "มุม" บางชนิด
ประเด็นสำคัญ/โครงกระดูก
แผนที่ความร้อน (อยู่ระหว่างดำเนินการ)
การแบ่งส่วน