마마이트
Marmite [Markdown make sites]는 매우 간단한 정적 사이트 생성기입니다.
Downcodes 편집자는 다음과 같이 말했습니다. "Marmite는 매우 간단한 정적 웹 사이트 생성기입니다. 저는 종종 다른 SSG를 사용하지만 처음부터 설정하기가 너무 번거롭다고 생각합니다. 단지 마크다운 파일의 디렉토리와 명령을 실행하면 웹 사이트를 생성할 수 있습니다. 정말 편리해요."
사용방법
Marmite는 한 가지 간단한 작업을 수행합니다.
마크다운 파일을 HTML로 변환
또한 정적 파일이나 미디어 파일을 생성하거나 출력 디렉터리에 복사하는 작업도 처리할 수 있습니다.
설치하다
화물을 사용하여 설치:
`배쉬
화물 설치 마마이트
`
또는 릴리스 페이지에서 미리 컴파일된 바이너리를 다운로드하세요.
사용
사용하기가 너무 쉽습니다!
`배쉬
$ marmite 폴더(마크다운 파일 경로 포함) 생성된 사이트
`
웹사이트는 pathtogenerated_site/ 디렉터리에 생성됩니다.
CLI
`배쉬
❯ 마마이트 --help
Marmite는 가장 쉬운 정적 사이트 생성기입니다.
사용법: marmite [OPTIONS]
인수:
옵션:
--serve 내장된 HTTP 서버로 사이트를 제공합니다.
--watch 변경 사항을 감지하고 사이트를 자동으로 재구축합니다.
--묶다
서버를 바인딩할 주소 [기본값: localhost:8000]
--config
사용자 정의 구성 파일 경로 [기본값: marmite.yaml]
--debug 디버그 메시지 인쇄
--init-templates 프로젝트의 템플릿을 초기화합니다.
--start-theme 템플릿 및 정적 자산으로 테마 초기화
-h, --help 도움말 인쇄
-V, --version 인쇄 버전
`
시작하기
Marmite https://rochacbruno.github.io/marmite/getting-started.html을 시작하는 방법을 알아보려면 튜토리얼을 읽고 블로그를 만드는 데 몇 분을 투자하세요.
문서
https://rochacbruno.github.io/marmite/에서 템플릿을 사용자 정의하고 주석을 추가하는 방법 등에 대해 자세히 알아보세요.
요약
Marmite는 매우 간단합니다.
이러한 단순함이 귀하의 요구 사항에 맞지 않는다면, 다른 훌륭한 정적 웹 사이트 생성기가 있습니다. 제가 추천하는 몇 가지는 다음과 같습니다.
지킬
휴고
개츠비
Next.js
다크넷 개체 감지 프레임워크 및 YOLO
개요
Darknet은 C, C++ 및 CUDA로 작성된 오픈 소스 신경망 프레임워크입니다.
YOLO(You Only Look Once)는 Darknet 프레임워크에서 실행되는 최첨단 실시간 개체 탐지 시스템입니다.
중요 링크:
Hank.ai가 Darknet/YOLO 커뮤니티를 돕는 방법
다크넷/YOLO 웹사이트
다크넷/YOLO FAQ
다크넷/YOLO Discord 서버
종이
YOLOv7 논문
Scaled-YOLOv4 용지
YOLOv4 논문
YOLOv3 논문
일반 정보
Darknet/YOLO 프레임워크는 속도와 정확성 측면에서 다른 프레임워크 및 YOLO 버전보다 지속적으로 성능이 뛰어납니다.
프레임워크는 완전 무료이며 오픈 소스입니다. 라이센스나 비용 없이 Darknet/YOLO를 상업용 제품을 포함한 기존 프로젝트 및 제품에 통합할 수 있습니다.
2024년 10월에 출시된 Darknet V3("Jazz")는 NVIDIA RTX 3090 GPU를 사용할 때 최대 1000FPS에서 LEGO 데이터 세트 비디오를 정확하게 실행할 수 있습니다. 즉, Darknet/YOLO가 1밀리초 이내에 읽습니다. 각 비디오 프레임을 가져오고 크기를 조정하고 처리합니다. .
Darknet/YOLO의 CPU 버전은 Raspberry Pi, 클라우드 및 Colab 서버, 데스크톱, 노트북 및 고급 교육 장비와 같은 간단한 장치에서 실행될 수 있습니다. Darknet/YOLO의 GPU 버전에는 NVIDIA의 CUDA 호환 GPU가 필요합니다.
Darknet/YOLO는 Linux, Windows 및 Mac에서 실행됩니다. 아래 빌드 지침을 참조하세요.
다크넷 버전
Joseph Redmon이 2013~2017년에 작성한 원본 Darknet 도구에는 버전 번호가 없습니다. 버전 0.x인 것 같습니다.
2017년부터 2021년까지 Alexey Bochkovskiy가 관리하는 다음 인기 Darknet 저장소에도 버전 번호가 없습니다. 우리는 그것이 버전 1.x라고 믿습니다.
Hank.ai가 후원하고 2023년부터 Stéphane Charette가 관리하는 Darknet 저장소는 버전 명령을 갖춘 최초의 저장소입니다. 2023년부터 2024년 말까지 버전 2.x "OAK"로 돌아갑니다.
목표는 코드 기반에 익숙해지면서 기존 기능을 가능한 한 적게 중단하는 것입니다.
CMake를 사용하여 Windows 및 Linux에서 빌드하는 통합된 방법을 갖도록 빌드 단계를 다시 작성했습니다.
C++ 컴파일러를 사용하도록 코드 베이스를 변환합니다.
훈련 중 Chart.png가 향상되었습니다.
주로 네트워크 훈련에 필요한 시간을 줄이는 것과 관련된 버그 수정 및 성능 관련 최적화입니다.
이 코드 베이스의 마지막 분기는 v2 분기의 버전 2.1입니다.
다음 개발 단계는 2024년 중반에 시작되어 2024년 10월에 출시됩니다. 버전 명령은 이제 3.x "JAZZ"를 반환합니다.
이러한 명령 중 하나를 실행해야 하는 경우 언제든지 이전 v2 분기를 확인할 수 있습니다. 누락된 명령 추가를 조사할 수 있도록 알려주세요.
오래되고 유지 관리되지 않는 많은 명령을 제거했습니다.
훈련 및 추론 중 최적화를 포함한 다양한 성능 최적화.
원본 Darknet API를 사용하는 수정된 이전 C 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에서 볼 수 있습니다.
LEGO Gears 및 Rolodex와 같이 Darknet/YOLO 테스트에 사용할 수 있는 몇 가지 더 간단한 데이터 세트와 사전 훈련된 가중치가 있습니다. 자세한 내용은 Darknet/YOLO FAQ를 참조하세요.
MSCOCO 사전 훈련된 가중치는 여러 위치나 이 저장소에서 다운로드할 수 있습니다.
YOLOv2(2016년 11월)
- yolov2-tiny.weights
- yolov2-full.weights
YOLOv3(2018년 5월)
- yolov3-tiny.weights
- yolov3-full.weights
YOLOv4(2020년 5월)
- yolov4-tiny.weights
- yolov4-full.weights
YOLOv7(2022년 8월)
- yolov7-tiny.weights
- yolov7-full.weights
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 video1.avi
`
자신의 네트워크를 훈련해야 한다는 점에 유의하세요. MSCOCO는 모든 것이 정상인지 확인하는 데 자주 사용됩니다.
짓다
과거(2023년 이전)의 다양한 구축 방식이 하나의 통합 솔루션으로 통합되었습니다. Darknet에서는 필요한 프로젝트 파일을 생성하기 위해 C++17 이상, OpenCV 및 CMake를 사용해야 합니다.
Darknet/YOLO를 구축, 설치, 실행하기 위해 C++를 알 필요는 없습니다. 마치 자동차를 운전하기 위해 정비공이 될 필요가 없는 것과 같습니다.
구글 코랩
Google Colab 지침은 Linux 지침과 동일합니다. 새로운 네트워크 훈련과 같은 특정 작업을 수행하는 방법을 보여주는 여러 Jupyter 노트북이 제공됩니다.
colab 하위 디렉터리에서 노트북을 확인하거나 아래 Linux 지침을 따르세요.
리눅스 CMake 방법
1. 필요한 소프트웨어를 설치합니다:
`배쉬
sudo apt-get 설치 빌드 필수 git libopencv-dev cmake
`
2. Darknet 저장소를 복제합니다.
`배쉬
자식 클론 https://github.com/hank-ai/darknet
`
3. 빌드 디렉터리를 생성합니다:
`배쉬
CD 다크넷
mkdir 빌드
CD 빌드
`
4. CMake를 사용하여 빌드 파일을 생성합니다.
`배쉬
cmake -DCMAKEBUILDTYPE=릴리스 ..
`
5. 다크넷 구축:
`배쉬
-j4를 만드세요
`
6. 다크넷 설치(선택 사항):
`배쉬
패키지 만들기
sudo dpkg -i darknet-VERSION.deb
`
알아채다:
시스템에 NVIDIA GPU가 설치되어 있는 경우 CUDA 또는 CUDA+cuDNN을 설치하여 이미지(및 비디오) 처리를 가속화할 수 있습니다.
CUDA 또는 CUDA+cuDNN을 설치하거나 NVIDIA 소프트웨어를 업그레이드하는 경우 빌드 디렉터리에서 CMakeCache.txt 파일을 삭제하고 Darknet을 다시 빌드해야 합니다.
darknet version 명령을 사용하여 Darknet이 성공적으로 설치되었는지 확인할 수 있습니다.
Windows CMake 메서드
1. 필요한 소프트웨어를 설치합니다:
`배쉬
Winget 설치 Git.Git
Winget 설치 Kitware.CMake
Winget 설치 nsis.nsis
Winget 설치 Microsoft.VisualStudio.2022.Community
`
2. Visual Studio 설치를 수정합니다.
- Windows 시작 메뉴를 열고 Visual Studio 설치 프로그램을 실행합니다.
- '수정'을 클릭하세요.
- "C++를 사용한 데스크톱 개발"을 선택합니다.
- 오른쪽 하단의 '수정'을 클릭한 후 '예'를 클릭하세요.
3. Microsoft VCPKG를 설치합니다.
`배쉬
질병통제예방센터:
mkdir c:src
CD C:src
자식 클론 https://github.com/microsoft/vcpkg
CD vcpkg
bootstrap-vcpkg.bat
.vcpkg.exe 통합 설치
.vcpkg.exe powershell 통합
.vcpkg.exe opencv 설치[contrib,dnn,freetype,jpeg,openmp,png,webp,world]:x64-windows
`
4. Darknet 저장소를 복제합니다.
`배쉬
CD C:src
자식 클론 https://github.com/hank-ai/darknet.git
CD 다크넷
mkdir 빌드
CD 빌드
`
5. CMake를 사용하여 빌드 파일을 생성합니다.
`배쉬
cmake -DCMAKEBUILDTYPE=릴리스 -DCMAKETOOLCHAINFILE=C:/src/vcpkg/scripts/buildsystems/vcpkg.cmake ..
`
6. 다크넷 구축:
`배쉬
msbuild.exe /property:Platform=x64;Configuration=Release /target:Build -maxCpuCount -verbosity:normal -detailedSummary darknet.sln
msbuild.exe /property:Platform=x64;구성=PACKAGE.vcxproj 릴리스
`
7. 다크넷 설치:
- NSIS 설치 마법사를 시작하려면 빌드 디렉터리에서 darknet-VERSION.exe 파일을 실행하세요.
알아채다:
시스템에 NVIDIA GPU가 설치되어 있는 경우 CUDA 또는 CUDA+cuDNN을 설치하여 이미지(및 비디오) 처리를 가속화할 수 있습니다.
CUDA 또는 CUDA+cuDNN을 설치하거나 NVIDIA 소프트웨어를 업그레이드하는 경우 빌드 디렉터리에서 CMakeCache.txt 파일을 삭제하고 Darknet을 다시 빌드해야 합니다.
darknet.exe version 명령을 사용하여 Darknet이 성공적으로 설치되었는지 확인할 수 있습니다.
다크넷 사용
CLI
다음은 Darknet에서 지원하는 모든 명령의 전체 목록이 아닙니다.
Darknet CLI 외에도 Darknet/YOLO에 대한 대체 CLI를 제공하는 DarkHelp 프로젝트 CLI도 참고하세요. DarkHelp CLI에는 Darknet에서 사용할 수 없는 몇 가지 고급 기능도 있습니다. Darknet CLI와 DarkHelp CLI를 동시에 사용할 수 있으며 상호 배타적이지 않습니다.
아래 표시된 대부분의 명령에서는 .names 및 .cfg 파일에 해당하는 .weights 파일을 사용해야 합니다. 자신만의 네트워크를 훈련시키거나(강력히 권장됩니다!) 다른 사람이 훈련시켜 인터넷에 무료로 게시한 신경망을 다운로드할 수 있습니다. 사전 학습 데이터 세트의 예는 다음과 같습니다.
LEGO Gears(이미지에서 개체 찾기)
Rolodex(이미지에서 텍스트 찾기)
MSCOCO(표준 80개 범주 개체 감지)
실행할 명령은 다음과 같습니다.
darknet help: 도움말 정보를 표시합니다.
다크넷 버전: 버전을 확인하세요.
darknet detector test cars.data cars.cfg cars_best.weights image1.jpg: 예측을 위해 이미지를 사용합니다(V2).
darknet02displayannotatedimages cars.cfg image1.jpg: 이미지를 사용한 예측(V3).
DarkHelp cars.cfg cars.cfg cars_best.weights image1.jpg: 이미지를 사용한 예측(DarkHelp).
darknet 탐지기 테스트 Animals.data Animals.cfg Animalsbest.weights -extoutput dog.jpg: 출력 좌표(V2).
darknet01inference_images 동물 dog.jpg: 출력 좌표(V3).
DarkHelp --json Animals.cfg Animals.names Animals_best.weights dog.jpg: 출력 좌표(DarkHelp).
다크넷 탐지기 데모 Animals.data Animals.cfg Animalsbest.weights -extoutput test.mp4: 비디오 처리(V2).
darknet03display_videos Animals.cfg test.mp4: 비디오 처리(V3).
DarkHelp Animals.cfg Animals.names Animals_best.weights test.mp4: 비디오 처리 중(DarkHelp).
다크넷 탐지기 데모 Animals.data Animals.cfg Animals_best.weights -c 0: 웹캠에서 읽습니다(V2).
darknet08display_webcam 동물: 웹캠(V3)에서 읽습니다.
darknet detector 데모 Animals.data Animals.cfg Animalsbest.weights test.mp4 -outfilename res.avi: 결과를 비디오에 저장합니다(V2).
darknet05processvideosmultithreaded Animals.cfg Animals.names Animals_best.weights test.mp4: 결과를 비디오에 저장합니다(V3).
DarkHelp Animals.cfg Animals.names Animals_best.weights test.mp4: 결과를 비디오(DarkHelp)에 저장합니다.
다크넷 탐지기 데모 Animals.data Animals.cfg Animalsbest.weights test50.mp4 -jsonport 8070 -mjpegport 8090 -extoutput: JSON 형식(V2)을 사용합니다.
darknet06imagestojson 동물 image1.jpg: JSON 형식(V3)을 사용합니다.
DarkHelp --json Animals.names Animals.cfg Animals_best.weights image1.jpg: JSON 형식(DarkHelp)을 사용합니다.
다크넷 탐지기 데모 Animals.data Animals.cfg Animals_best.weights -i 1 test.mp4: 특정 GPU에서 실행됩니다.
다크넷 탐지기 맵 Driving.data Driving.cfg Driving_best.weights ...: 신경망의 정확성을 확인합니다.
다크넷 탐지기 맵 Animals.data Animals.cfg Animalsbest.weights -iouthresh 0.75: mAP@IoU=75의 정확성을 확인합니다.
darknet detector calcanchors Animals.data -numof_clusters 6 -width 320 -height 256: 앵커 포인트를 다시 계산합니다.
darknet detector -map -dont_show train Animals.data Animals.cfg: 새 네트워크를 훈련합니다.
기차
파일과 디렉터리를 어떻게 설정합니까?
어떤 프로필을 사용해야 합니까?
자체 네트워크를 훈련할 때 어떤 명령을 사용해야 합니까?
DarkMark 주석 및 교육을 사용하는 것은 필요한 모든 Darknet 파일을 생성하는 가장 간단한 방법입니다. 이는 확실히 새로운 신경망을 훈련하는 데 권장되는 방법입니다.
사용자 정의 네트워크를 훈련시키기 위해 다양한 파일을 수동으로 설정하려면 다음 단계를 따르십시오.
1. 파일을 저장할 새 폴더를 만듭니다. 예를 들어, 동물을 감지하기 위한 신경망을 생성하면 ~/nn/animals/ 디렉터리가 생성됩니다.
2. 템플릿으로 사용하려는 Darknet 구성 파일을 복사합니다. 예를 들어 cfg/yolov4-tiny.cfg를 참조하세요. 생성한 폴더에 넣어주세요. 이 예에서는 이제 ~/nn/animals/animals.cfg가 있습니다.
3. 구성 파일을 저장한 폴더에 Animals.names 텍스트 파일을 만듭니다. 이 예에서는 이제 ~/nn/animals/animals.names가 있습니다.
4. 텍스트 편집기를 사용하여 Animals.names 파일을 편집합니다. 사용하려는 카테고리를 나열하십시오. 각 줄에는 정확히 하나의 항목이 있어야 하며, 빈 줄이나 설명은 없어야 합니다. 이 예의 경우 .names 파일에는 다음 4줄이 포함됩니다.
`
개
고양이
새
말
`
5. 같은 폴더에 Animals.data 텍스트 파일을 만듭니다. 이 예의 경우 .data 파일에는 다음이 포함됩니다.
`
수업=4
기차=/home/username/nn/animals/animals_train.txt
유효한=/home/username/nn/animals/animals_valid.txt
이름=/home/username/nn/animals/animals.names
백업=/홈/사용자 이름/nn/동물
`
6. 이미지와 주석을 저장할 폴더를 만듭니다. 예를 들어 ~/nn/animals/dataset일 수 있습니다. 각 이미지에는 해당 이미지의 주석을 설명하는 해당 .txt 파일이 필요합니다. .txt 주석 파일의 형식은 매우 구체적입니다. 각 주석에는 주석의 정확한 좌표가 포함되어야 하기 때문에 이러한 파일을 수동으로 생성할 수 없습니다. 이미지에 주석을 추가하려면 DarkMark 또는 기타 유사한 소프트웨어를 참조하십시오. YOLO 주석 형식은 Darknet/YOLO FAQ에 설명되어 있습니다.
7. .data 파일에 이름이 지정된 "train" 및 "valid" 텍스트 파일을 생성합니다. 이 두 텍스트 파일은 Darknet이 훈련 및 검증(mAP% 계산 시)에 각각 사용해야 하는 모든 이미지를 나열해야 합니다. 한 줄에 하나의 이미지. 경로와 파일 이름은 상대적이거나 절대적일 수 있습니다.
8. 텍스트 편집기를 사용하여 .cfg 파일을 수정합니다.
- 배치=64인지 확인하세요.
- 하위 구분에 주의하세요. 네트워크 크기와 GPU에서 사용 가능한 메모리 양에 따라 세분화를 늘려야 할 수도 있습니다. 최적의 값은 1이므로 그것부터 시작하세요. 1이 효과가 없다면 Darknet/YOLO FAQ를 참조하세요.
- 참고 maxbatches=… 시작하기에 좋은 값은 범주 수에 2000을 곱하는 것입니다. 이 예에는 4마리의 동물이 있으므로 4 * 2000 = 8000입니다. 이는 maxbatches=8000을 사용한다는 의미입니다.
- 참고 단계=… 이는 maxbatch의 80%와 90%로 설정되어야 합니다. 이 예에서는 maxbatches가 8000으로 설정되어 있으므로 steps=6400,7200을 사용합니다.
- 참고 너비=... 및 높이=.... 이는 네트워크 차원입니다. Darknet/YOLO FAQ에서는 사용할 최적의 크기를 계산하는 방법을 설명합니다.
- 모든 class=... 행을 찾아 .names 파일의 클래스 수로 수정합니다. 이 예에서는 클래스=4를 사용합니다.
- 각 [yolo] 섹션 앞의 [convolutional] 섹션에서 모든 필터=... 행을 찾습니다. 사용할 값은 (범주수 + 5) 3 입니다. 이는 이 예에서는 (4 + 5) 3 = 27임을 의미합니다. 따라서 적절한 줄에 filter=27을 사용합니다.
9. 훈련을 시작하세요! 다음 명령을 실행하십시오.
`배쉬
CD ~/nn/동물/
다크넷 탐지기 -map -dont_show 기차 동물.데이터 동물.cfg
`
기다리세요. 가장 좋은 가중치는 Animals_best.weights로 저장됩니다. Chart.png 파일을 보면 훈련 진행 상황을 관찰할 수 있습니다. 새로운 네트워크를 훈련할 때 사용할 수 있는 추가 매개변수는 Darknet/YOLO FAQ를 참조하세요.
훈련 중에 더 자세한 내용을 보려면 --verbose 매개변수를 추가하세요. 예를 들어:
`배쉬
다크넷 탐지기 -map -dont_show --verbose 기차 동물.데이터 동물.cfg
`
기타 도구 및 링크
Darknet/YOLO 프로젝트를 관리하고, 이미지에 주석을 달고, 주석의 유효성을 검사하고, Darknet 교육에 필요한 파일을 생성하려면 DarkMark를 참조하세요.
이미지 타일링, 비디오의 객체 추적 또는 상용 애플리케이션에서 쉽게 사용할 수 있는 강력한 C++ API 작업을 위한 Darknet의 강력한 대체 CLI에 대해서는 DarkHelp를 참조하세요.
귀하의 질문에 대한 답변이 도움이 될 수 있는지 알아보려면 Darknet/YOLO FAQ를 참조하세요.
Stéphane의 YouTube 채널에서 다양한 튜토리얼과 예제 비디오를 확인해 보세요.
지원 질문이 있거나 다른 Darknet/YOLO 사용자와 채팅하고 싶다면 Darknet/YOLO Discord 서버에 가입하세요.
로드맵
최종 업데이트 날짜: 2024-10-30
완전한
교육 중에 qsort()를 std::sort()로 대체했습니다(다른 모호한 대체 항목이 여전히 존재함).
check_mistakes, getchar() 및 system() 제거
C++ 컴파일러(Linux에서는 g++, Windows에서는 Visual Studio)를 사용하도록 Darknet을 변환합니다.
Windows 빌드 수정
Python 지원 수정
다크넷 라이브러리 구축
예측에 대한 라벨을 다시 활성화합니다('알파벳' 코드).
CUDA/GPU 코드를 다시 활성화합니다.
CUDNN을 다시 활성화합니다.
CUDNN 절반을 다시 활성화합니다.
CUDA 아키텍처를 하드코딩하지 마세요
더 나은 CUDA 버전 정보
AVX 다시 활성화
이전 솔루션 및 Makefile 제거
OpenCV를 선택 사항이 아닌 것으로 만들기
이전 pthread 라이브러리에 대한 종속성을 제거합니다.
STB 삭제
새로운 CUDA 계측을 사용하도록 CMakeLists.txt를 다시 작성하세요.
오래된 "알파벳" 코드를 제거하고 데이터/라벨에서 700개 이상의 이미지를 삭제했습니다.
외부 소스 코드 빌드
더 나은 버전 번호 출력
훈련 관련 성과 최적화(진행 중인 작업)
추론 관련 성능 최적화(진행 중인 작업)
가능하면 값별로 참조를 사용하세요.
.hpp 파일 정리
darknet.h 다시 작성
cv::Mat를 void*로 변환하지 말고 대신 올바른 C++ 객체로 사용하세요.
일관되게 사용되는 내부 이미지 구조를 수정하거나 유지합니다.
ARM 아키텍처 Jetson 장치의 빌드 수정
- 기존 Jetson 장치는 더 이상 NVIDIA에서 지원되지 않으므로 수정될 가능성이 없습니다(C++17 컴파일러 없음).
- 새로운 Jetson Orin 장치 실행 중
V3에서 Python API 수정
- 더 나은 Python 지원이 필요합니다(이 문제를 해결하는 데 기꺼이 도움을 줄 Python 개발자가 있습니까?).
단기 목표
printf()를 std::cout으로 교체(작업 진행 중)
이전 zed 카메라 지원을 확인하세요
더 우수하고 일관된 명령줄 구문 분석(작업 진행 중)
중기 목표
모든 char* 코드를 제거하고 std::string으로 대체합니다.
경고를 숨기지 말고 컴파일러 경고를 정리하세요(작업 진행 중).
C의 사용자 정의 이미지 구조 대신 cv::Mat를 더 잘 사용합니다(작업 진행 중).
이전 목록 함수를 std::벡터 또는 std::list로 대체
단일 채널 회색조 이미지에 대한 지원 수정
N > 3인 N 채널 이미지에 대한 지원 추가(예: 추가 깊이 또는 열 채널이 있는 이미지)
진행 중인 코드 정리(진행 중)
장기 목표
모든 GPU와 관련된 CUDA/CUDNN 문제 수정
CUDA+cuDNN 코드 재작성
NVIDIA 이외의 GPU에 대한 지원 추가를 고려하세요.
회전된 경계 상자 또는 일부 형태의 "각도" 지원
핵심 포인트/골격
히트맵(작업 진행 중)
분할