[Depth] 엔지니어 필수품 —AI 모델 교육 + 추론 최적화 + 임베디드 배포

이것은 딥 러닝 및 컴퓨터 비전 분야의 사람들을위한 포괄적 인 교육 기사입니다.

누구나 AI를 듣는다

AI에 대해 누가 압니까? 세계 인구는 70 억, 중국에는 13 억이 있습니다. 많은 사람들이 인공 지능을 알고 있습니다. 그것은 모든 분노이지만 모든 종류의 의사 과학과 의사 개념도 나타났습니다. 중국에는 수십만 명의 컴퓨터 알고리즘 엔지니어가 있으며 그중 AI는

시각 알고리즘 엔지니어, NLP 알고리즘 엔지니어, 추천 시스템, 음성 인식 등과 같은 관련은 훨씬 적습니다! 당신이 초보자, 컴퓨터 초보자, 학생 또는 자녀가 AI에 노출되기를 원하는 부모라면 사회의 소위 교육 기관 및 교육 기관에 유혹받지 말고 수만 명 이상을 지출하십시오. , 외로움을 배웠다! 저는 훈련 기관에서 온 많은 사람들을 알고 있습니다. 그들 모두는 모든 수준에서 매우 수익성이 있고 당신을 돌릴 것입니다. 오늘은 더 자세히 설명하지 않겠습니다. 저는 AI 비전 알고리즘 전문가로서의 모든 삶 (Xiaobai, 학부생, AI에 연락하려는 친구 및 AI와 접촉하는 사람들)을 안내하는 데만이 일련의 기사를 사용합니다. 기술 기사와 문서를 읽어보세요. 더 나은 진전을 위해!

오늘은 개발, 모델 훈련, 최적화에서 배포, 0에서 1까지의 착륙까지 AI 비전 애플리케이션의 경험 공유를 공유하겠습니다! 작은 공책을 가지고 필기 해주세요 ~

프로젝트 쇼

여기에 사진 설명 삽입

          Yolov3 目标检测

여기에 사진 설명 삽입 Yolov5 흡연 테스트
여기에 사진 설명 삽입

   Ssd 安全帽检测

여기에 사진 설명 삽입

        Ssd 口罩检测

여기에 사진 설명 삽입

       Yolov 4 车牌车速与闯红灯检测

일부는 개발 모듈을 기반으로 추론 가속 후 CPU에서 60-80fps에 도달 할 수 있으며 전력 소모가 매우 낮아 애플리케이션 랜딩에 매우 적합하다는 것을 알 수 있습니다.

상업적이고 과학적인 가치가있는 흥미로운 프로젝트는 하나씩 나열되지 않았으며, 이러한 프로젝트는 제가 소개 할 비전 모듈과 같은 개발 보드에 배포 할 수 있습니다 ~

두 개의 종속 환경 및 가이드

2.1 종속 환경

내 환경 : Ubuntu18.04

Python 3.7 (3.x는 괜찮음) Tensorflow (1.14-gpu) Pytorch (1.5-gpu)

2085 모듈 1 개, Openvino2020.3.194, C ++, g ++ (Ubuntu 7.5.0-3ubuntu1 ~ 18.04)

7.5.0 다음으로 환경이 필요할 때 모든 사람이 설치하도록 할 것입니다.

2.2이 기사에 대한 소개

이 기사는 원본이며 무단 전재는 금지되어 있습니다.

AI 방향의 연구원 및 엔지니어 인 경우 : 연구원 인 경우 모델 교육 및 추론 최적화 및 애플리케이션 배포 방법을 가르쳐주세요. 추론 및 애플리케이션 배포 읽기에 집중할 수 있습니다. 효과를 직관적으로 알 수 있고, 착륙 응용 프로그램의 실제 효과.

3 가지 모델 교육

3.1 초보자는 올바른 교육을 할 수 있습니다

AI를 처음 접하고 딥 러닝 및 컴퓨터 비전에 익숙하지 않지만 Python 또는 C ++ 기반이 있고 간단한 시각적 기반을 완성하고 싶다면 특정 기반을 개선하는 것이 좋습니다 (이 방법으로 문제를 더 잘 해결할 수 있습니다. 곤충).

이때 표적 감지 모델을 학습시키고 자합니다. Yolo 시리즈, ssd, 더 빠른 rcnn 등과 같은 다양한 알고리즘을 선택할 수 있습니다.이 섹션에서는 yolo의 yolov5를 예로 들어 흡연 감지 데모를 제공합니다.이 문서를 참조하세요. 블로그 : https://blog.csdn.net/qq_46098574/article/details/107334954,이 섹션의 기타 대상 탐지 또는 기타 다양한 알고리즘 및 효과 비교의 사용, 나중에 만나 뵙겠습니다. 이 블로그를 기반으로 모델 트레이닝 실습 튜토리얼을 소개합니다 ~

소스 코드 다운로드

git clone https://github.com/CVUsers/Smoke-Detect-by-YoloV5/tree/master.git

디렉토리를 입력하고 종속 환경을 설치합니다.

pip install-Ur requirements.txt

훈련에 혼합 정밀도 모델을 사용해야하는 경우 : Apex 설치

데이터가 표시되지 않은 경우 : 블로그를 참조하십시오.

생성 된 xml 파일을 기반으로 os 작업은 접미사없이 xml 파일에 표시된대로 작성됩니다.

여기에 사진 설명 삽입

그런 다음 voc_label.py를 실행하여 레이블로 변환하십시오.

훈련 / 검증 세트 실행 잘라 내기 train_test_split.py

path_trans를 실행하여 경로를 완성하고 train.txt를 작성하십시오.

다음으로 yaml 텍스트를 작성합니다. smoke.yaml을보고 이전 단계에서 생성 된 train.txt 및 test.txt의 경로를 완료 한 후 두 개의 txt 경로를 yaml에 작성한 다음 nc : 고유 한 범주 수를 수정하고 이름 【 'smoke'】

여기에 사진 설명 삽입

위의 데이터 전처리를 완료 한 후 학습을 시작할 수 있습니다. 위의 처리 단계 중 일부는 모든 사람에게 다를 수 있지만 아이디어는 일반적으로 동일합니다. 다음으로 사전 훈련을 수행하고 공식 사전 훈련 모델을 다운로드 할 수 있습니다.

yolov5s yolov5m yolov5l yolov5x가 왔고 나는 yolov5s를 내 github에 넣었습니다. 이것은 상대적으로 작은 25MB, 특히 모바일 터미널 용입니다.

훈련 시작 :

python train.py–data data / smoke.yaml–cfg models / yolov5s.yaml–weights weights / yolov5s.pt–batch-size10 --epochs100

잘 진행되면 다음과 같은 반복 훈련이 표시됩니다.
여기에 사진 설명 삽입

실시간 탐지를 위해 detect.py 실행

여기에 사진 설명 삽입

그중 사진에 대한 추론을 위해 소스에 기본 사진 경로를 쓰거나 그림과 같이 전체 사진 폴더를 쓰면 모든 사진이 감지됩니다. 비디오 주소와 비디오 폴더를 작성하여 모든 비디오를 감지하고 추론에 저장할 수도 있습니다.

밖으로. 0으로 변경

실시간 감지입니다 ~ 기본 컴퓨터 카메라는 물론 휴대폰으로도 변경할 수 있습니다. 이것은 또한 매우 간단합니다. 필요한 경우 저와 개인적으로 채팅 할 수 있습니다. 코드를 실행하면 컴퓨터에 내장 된 카메라에서 실시간 감지를 볼 수있어 약간의 지연이 발생할 수 있습니다. 아래에서 사용할 2085 모듈을 사용하면 새로운 경험을하게됩니다.

3.2 마스터들도 좋아하는 블랙 기술 : 무손실 반 정밀도 모델

위에서 우리는 yolov5 흡연 감지를 사용한 표적 감지를 예로 소개했고, 다음으로이를 바탕으로 개선하고 마스터들이 원하는 블랙 기술에 대해 이야기 할 것입니다.

1 : 혼합 정밀도 모델, 반 정밀도 모델은 정확도를 유지하면서 비디오 메모리를 어떻게 줄일 수 있습니까?

apex 설치 후 코드에 추가하고 옵티 마이저에서 앰프 초기화

역 전파를 최적화합니다. cuda 교육에 조립

반 정도를 달성하기 위해 다른 정보는 블로그에 자세히 설명되어 있으며 일부 세부 정보는 발표되지 않았습니다.

3.2 마스터도 좋아하는 블랙 기술 : 사전 훈련 모델을 사용하는 이유

사전 훈련 모델을 사용하여 관계자가 제공했는데 사전 훈련 모델을 사용하려는 이유를 알고 있습니까?

저자는 벤치 마크 모델을 설계하기 위해 최선을 다했습니다. 유사한 자연어 처리 문제를 해결하기 위해 처음부터 모델을 구축하는 대신 자체 데이터 세트에서 사전 훈련 된 모델을 사용할 수 있습니다.

일부 미세 조정이 여전히 수행되어야하지만 이미 많은 시간을 절약했습니다. 일반적으로 각 손실은 더 빠르게 감소하고 계산 리소스를 절약합니다.

경사 하강 법의 수렴 속도 향상

모델 오류가 낮거나 일반화 오류가 낮은 모델을 얻을 가능성이 높습니다.

초기화 취소 또는 부적절한 초기화로 인한 그라데이션 사라짐 또는 그라데이션 폭발을 줄입니다. 이 상황으로 인해 모델이 느려지고 충돌하고 실패합니다.

무작위 초기화는 대칭을 깨뜨릴 수 있으므로 서로 다른 은닉 유닛이 서로 다른 것을 학습 할 수 있습니다.

3.3 마스터들도 좋아하는 블랙 테크놀로지 : 훈련이 중단되면 어떨까요?

-resume 매개 변수를 코드에 추가했습니다. 훈련 중에 강제로 중단해야하는 경우이 매개 변수를 사용할 수 있습니다 (훈련에 저장된 last.pt).

전이 학습. 이때 코드의 세부 정보가 표시되며 사용법은 –resume을 추가하는 것입니다.

그러면 공식적인 사전 훈련 모델을 사용하지 마십시오. 마지막 손실 훈련이 표시되고 성공할 것입니다.

3.3 마스터도 좋아하는 블랙 기술 : 데이터 향상

인공 지능 또는 컴퓨터 비전의 궁극적 인 목표 중 하나는 현실 세계의 복잡한 환경에 진정으로 적용 할 수있는 시스템을 구축하는 것입니다. 현재 적용된 머신 러닝 시스템에 관한 한 대부분의 시스템은지도 학습 방법을 채택하므로 필연적으로 이미지 샘플을 광범위하게 수집하고 해당 이미지 주석 작업을 수행해야합니다. 인력은 항상 고갈되고 고품질 샘플 세트 사진은 우수한 기계 학습 시스템을 구축하기위한 핵심 요소입니다. 적절한 데이터 향상 방법을 사용하면 데이터 세트 수를 10 배 이상 늘릴 수 있으므로 작은 샘플 세트에서 각 샘플의 사용을 최대화 할 수 있으므로 더 나은 기계 학습 모델을 얻도록 훈련시킬 수도 있습니다. 데이터 향상 방법은 모델의 견고성을 개선하고 학습 중에 과적 합을 방지 할 수도 있습니다.

일반적으로 사용되는 데이터 향상 방법은 주로 디지털 이미지 처리의 기하학적 변환에서 비롯되지만 이미지의 픽셀 값을 변경하지 않고 공간 위치를 변경하여 컨볼 루션 신경망이 이미지에서 더 많은 불변 적 특징을 학습 할 것으로 예상됩니다. 또한 일반화 성능을 향상시키는 데 도움이됩니다.

다음은 다양한 방법을 간략하게 열거하고 설명합니다.

번역 (Shift) 변환 : 이미지 평면에서 특정 방식 (번역의 단계, 범위 및 방향을 결정하기 위해 미리 정의 된 또는 임의의 방법)으로 원본 그림을 번역합니다.

뒤집기 변형 : 원본 그림을 수직 또는 수평 방향으로 뒤집습니다.

무작위 자르기 : 이미지를 자르기 위해 관심 영역을 무작위로 정의합니다. 이는 무작위 방해를 추가하는 것과 같습니다.

노이즈 : 가우스 노이즈 또는 소금과 후추 노이즈를 이미지에 무작위로 추가합니다.

대비 변환 (대비) : 이미지 대비를 변경하는 것은 HSV 공간에서 색조 구성 요소 H를 변경하지 않고 유지하면서 밝기 구성 요소 V 및 채도 S를 변경하여 실제 환경에서 조명 변화를 시뮬레이션하는 것과 같습니다.

줌 : 설정된 비율로 이미지를 축소하거나 확대합니다.

스케일 : 스케일링과 유사하지만 스케일 변환의 대상은 이미지 자체가 아닌 이미지 내용 (SIFT 특징 추출 방법 참조) 이미지 피라미드는 다양한 크기와 블러 정도의 이미지를 얻기 위해 구성됩니다.

3.3 전문가들이 좋아하는 검은 기술 : BN

배치 정규화

심층 신경망을 훈련 할 때 각 계층의 매개 변수가 지속적으로 변경되기 때문에 각 계층 입력의 확률 분포도 지속적으로 변경되어 비선형 활성화 함수 (예 : 시그 모이 드 등)의 양과 음이 포화되어 훈련 반복이 이루어집니다. 그 과정은 매우 느리거나 불가능 해졌습니다. 이때 일반적으로 더 작은 학습률과 세분화 된 가중치 초기화를 사용해야합니다. Loffe 등은이 현상을 "내부 공분산 이동"(내부 공분산 이동)이라고 불렀습니다.

공변량 이동) 및 제안 된 배치 정규화 (BN)를 통해 이러한 문제를 해결할 수 있습니다.

이 논문은 확률 적 경사 하강 법의 각 반복에서 미니 배치에서 정규화 연산을 수행하여 출력 결과의 각 차원의 평균 값이 0이고 분산이 1이되어 비선형 활성화 함수를 효과적으로 피할 수 있다고 제안합니다. 포화 문제 (시그 모이 드를 예로 들어 보겠습니다. 시그 모이 드 함수를 관찰하십시오.이 함수의 입력이 0에 가까워지면 출력 기울기가 더 커집니다.) 동시에 매개 변수와 해당 초기 값의 영향으로 기울기 변화가 감소합니다.

배치 정규화 : 일반적으로 비선형 매핑 (활성화 함수) 이전에 사용되며, 결과의 평균 값 (출력 신호의 각 차원)이 0이고 분산이 1이되도록 x = Wu + b를 정규화합니다. 각 계층의 입력이 안정적인 분포를 갖도록하면 네트워크 훈련에 도움이됩니다.

네트워크에서 BN 알고리즘 적용

기존 신경망은 샘플 x를 입력 계층에 입력하기 전에 x (평균 빼기 및 표준 편차 나누기) 만 정규화하여 샘플 간의 변동성을 줄입니다. 이를 바탕으로 BN은 입력 레이어의 입력 데이터 x를 표준화 할뿐만 아니라 각 은닉 레이어의 입력을 표준화합니다.

4 개 모델 최적화

앞서 훈련 최적화에 대해 이야기했는데 다음으로 Openvino 기반의 추론 최적화에 대해 소개하겠습니다. 작은 책이 있습니까?

4.1 Openvino 소개는이 블로그에서 찾을 수 있습니다.

OpenVINO는 고성능 컴퓨터 비전 및 딥 러닝 비전 애플리케이션의 개발을 가속화 할 수있는 기존 하드웨어 플랫폼을 기반으로 인텔에서 개발 한 툴킷입니다. 다양한 인텔 플랫폼의 하드웨어 가속기에서 딥 러닝을 지원하고 이기종 직접 실행이 가능합니다. Windows 및 Linux 시스템, Python / C ++ 언어 지원. 최적화 툴킷

OpenVINO

컴퓨터 비전 및 딥 러닝의 원리를 이해하지 못하는 Xiaobai가 매우 짧은 시간에 시작할 수 있도록합니다. 개발 플랫폼 구축 방법, 딥 러닝 프레임 워크 선택, 모델 교육 및 최적화, 하드웨어 가속 방법에 대해 걱정할 필요가 없습니다. 사전 교육 및 최적화 된 시맨틱 분할 모델은 곧 전문 자율 주행 자동차 시각 분석 시스템 세트를 만들 수있게 될 것입니다.

주요 특징:

1 : Intel 플랫폼에서 컴퓨터 비전 관련 딥 러닝 성능을 19 배 이상 향상

2 : 에지 장치에서 CNN 기반 네트워크의 성능 병목 현상 완화

3 : OpenCV 및 OpenXV * 비전 라이브러리의 기존 API 가속화 및 최적화

4 : 일반 API 인터페이스에 기반한 CPU, GPU, FPGA 및 기타 장치에서 실행

OpenVINO에는 2 개의 대형 모듈이 있습니다. 첫 번째는 딥 러닝 학습 된 모델을 엔진 인식 가능 파일 (xml 및 bin)로 변환하는 데 사용되는 OR이고 다른 하나는 인텔리전스를 사용하는 OpenVINO의 특정 구현 단위 인 추론 엔진입니다. 엔진이 해당 응용 프로그램을 완료합니다.

일반 프로세스 :

1 : 자신의 학습 모델에 따라 모드 최적화 프로그램을 구성합니다.

2 : 설정된 모델 매개 변수에 따라 Model Optimizer를 실행하고 해당 IR (주로 xml 및 bin)을 생성합니다.

xml- 주로 네트워크 토폴로지를 설명하는 데 사용됨

bin- 생성 된 가중치를 포함하고 이진 데이터를 편향합니다.

3 : 추론 엔진을 사용하여 실제 애플리케이션 시나리오에서 생성 된 IR 테스트

4 : 애플리케이션에서 추론 엔진의 해당 인터페이스를 호출하고 생성 된 모델 IR을 실제 환경에 배포합니다.

모델 최적화 도구

Model Optimizer는 주로 정적 모델 분석 및 구성 참조를 기반으로 깊이 모델의 자동 조정을 위해 교육 및 특정 구현 플랫폼 간의 전환을 용이하게하는 데 사용되는 크로스 플랫폼 명령 줄 도구입니다.

Model Optimizer는 일반적으로 사용되는 프레임 워크 (Caffe, TensofFlow, MXNet, Kaldi, ONNX 등)를 지원하도록 설계되었으며, 이는 쉬운 개발을 위해 레이어를 캡슐화하는 것과 같습니다.

Model Optimizer의 주요 워크 플로우 :

1 : 필요한 프레임 워크에 따라 Model Optimizer 구성

2 : 네트워크 토폴로지 및 매개 변수를 포함하여 학습 모델을 입력으로 제공

3 : 모델 최적화 프로그램 실행 (선택한 네트워크 토폴로지에 따른 훈련)

4 : 모델 최적화기로 IR 출력

추론 엔진 :

추론 엔진은 주요 운영 단위이며 해당 API를 제공합니다.

IR을 입력으로 사용

타겟 하드웨어에서 최적화 된 실행

임베디드 플랫폼의 최고의 실행 성능 제공

여기에 사진 설명 삽입

4.2 Openvino 설치

환경 : Ubuntu18.04

교육을 위해 공식 웹 사이트를 참조하거나 아래 단계를 따르십시오.

1. OpenVINO 툴킷 다운로드 :

https://docs.openvinotoolkit.org/latest/_docs_install_guides_installing_openvino_linux.html

2. 설치 :

압축 해제 :

tar -zxvf l_openvino_toolkit_p_2019.2.242.tgz

GUI 인터페이스 설치 :

cd /home//l_openvino_toolkit_p_2019.2.242

sudo ./install_GUI.sh

참고 : 이전에 OpenVINO를 설치 한 경우 / home / 디렉토리에서 inference_engine_samples 및 openvino_models를 삭제하십시오.

루트 사용자 설치, 기본 설치 디렉토리는 / opt / intel / openvino_입니다.

이 단계에서 사용자 지정 ...을 클릭하면 기본 설치 경로를 확인하고 사용자 지정 경로를 지원하며 저장 버튼을 클릭하여 설치할 수 있습니다.

설치 종속 환경 :

cd /opt/intel/openvino_2019.2.242/install_dependencies

sudo -E ./install_openvino_dependencies.sh

임시 환경 변수 설정 (환경 변수는 쉘 터미널을 닫으면 삭제되므로 영구적으로 설정하는 것이 좋습니다)

소스 /opt/intel/openvino/bin/setupvars.sh

영구 환경 변수 설정 :

vi / .bashrc

다음 코드를 추가하십시오.

소스 /opt/intel/openvino/bin/setupvars.sh

모델 최적화 프로그램을 구성하고 모든 프레임 워크를 동시에 구성합니다.

cd / opt / intel / openvino / deployment_tools / model_optimizer / install_prerequisites

sudo ./install_prerequisites.sh

3. 검증

이미지 분류 확인 스크립트를 실행합니다.

cd / opt / intel / openvino / deployment_tools / demo

sudo -E -H ./demo_squeezenet_download_convert_run.sh

여기에 사진 설명 삽입

추론 파이프 라인 확인 스크립트를 실행합니다.

sudo -H ./demo_security_barrier_camera.sh

테스트가 성공하고 설치가 완료되었습니다!

4.3 Openvino 모델 변환 및 추론

예를 들어 yolo 시리즈의 native pt 및 pb 모델 파일은 Openvino의 xml 및 bin으로 변환됩니다. 여기를 참조하십시오. xml 및 bin 파일을 변환 한 후 모델을 기반으로 실시간 탐지를 수행 할 수 있습니다 ~, 다음 그림은 간단한 사용 과정입니다.

모델 추론의 간단한 사용

여기에 사진 설명 삽입
여기에 사진 설명 삽입

5 개 모델 배포

5.1 모델 변환자가 학습 알고리즘 모델을 배포하고 openvino 추론 후 2085 모듈에 적용

이때 xml은 blob 파일로 변환되어 모듈에 배포 할 수 있습니다.

로컬 변환 파일을 찾으십시오.

수행

./myriad_compile

-ip U8 -VPU_MYRIAD_PLATFORM VPU_MYRIAD_2480 -VPU_NUMBER_OF_SHAVES 4

-VPU_NUMBER_OF_CMX_SLICES4 -m pathto.xml -o pathto.blob

경로에 Blob 파일을 생성 할 수 있습니다.

배포 전에 환경 설정이 필요하며 주로 다음과 같은 단계가 있습니다 ~

5.2 API 라이브

git clone https://github.com/signal11/hidapi.git

Linux를 예로 들어 readme.txt를 자세히 확인하십시오.

sudo apt-get install autotools-dev autoconf automake libtool

./bootstrap

./configure --enable-testgui --prefix = / usr

하다

설치하다

6 개 모듈 사용

6.1 cnn 타겟 감지 데모 실행

위의 종속성을 설치 한 후 제공하는 CNN 타겟 감지 모델을 직접 사용하고 2085 모듈을 연결할 수 있습니다.

  1. 설치 종속성 : install_dependencies 만들기

  2. 다음 명령으로 앱 빌드 : make build

./cnn-demo / dev / video2 data / CNN_2x8x.blob left

오류가보고되면 sudo를 추가하십시오.

이렇게하면 실시간 타겟 감지 화면이 표시됩니다.

여기에 사진 설명 삽입

여기에 사진 설명 삽입

6.2자가 학습 알고리즘 모델을 배포하고 openvino 추론 후 2085 모듈에 적용

모델 교육 기사에서 우리는 끊임없는 노력을 통해 모델을 교육 한 다음 간단한 IR 변환을 수행하고 pb 모델을 Openvino의 xml 및 bin 모델 파일로 변환 한 다음 모델을 통해 xml 파일을 blob으로 변환하기 만하면됩니다 ( (위의 추론 참조)

그런 다음 cnn_host에서 몇 군데 만 수정하면됩니다 ~

1 : 그림과 같이 대상 탐지 범주를 수정하고 원본을 주석 처리하고 범주를 추가합니다.
여기에 사진 설명 삽입

수정 후 make clean을 수행 한 다음 다시 빌드하여 타겟 감지를 수행 할 수 있습니다. 제스처 묘사와 같은 감지 요구 사항이 변경되는 경우 필요에 따라 decode_mobilenet 메소드를 수정하거나 도움이 필요하면 Google에 문의하세요. 수정하십시오.

여기에 사진 설명 삽입

./cnn-demo / dev / video2 data / CNN_2x8x.blob left

cnn-demo를 실행하면 추론 가속화 후 실시간 시각적 경험을 볼 수 있습니다.

여기에 사진 설명 삽입

구체적인 효과는 모델에 따라 다릅니다 ~

일곱 실제 비교

openvino 추론에 의해 가속되지 않은 yolov3 모델은 아래 그림과 같이 허용 가능한 감지 속도와 높은 정확도를 가지고 있습니다.

여기에 사진 설명 삽입

openvino 추론 및 가속 후 이것은 -d CPU이며 속도가 매우 빠릅니다.

여기에 사진 설명 삽입

위의 방법을 따르면 모듈에 yolov3 모델을 배치하면 다음 그림이 표시되며 속도도 매우 빠릅니다. 5
여기에 사진 설명 삽입

여덟 요약

8.1자가 학습 알고리즘 모델을 배포하고 openvino 추론 후 2085 모듈 간단한 예제에 적용

환경을 구성한 후에는 보행자 인식을 예로 들어 open_model_zoo의 데모를 사용할 수 있습니다.

cd / home / {경로} / open_model_zoo / tools / downloader

./downloader.py–name person-vehicle-bike-detection-crossroad-0078

xml 파일의 다운로드 경로를 기록하십시오.

/home/zxx/open_model_zoo/tools/downloader/intel/person-vehicle-bike-detection-crossroad-0078/FP32/person-vehicle-bike-detection-crossroad-0078.xml

xml을 blob으로 변환

./myriad_compile

-ip U8 -VPU_MYRIAD_PLATFORM VPU_MYRIAD_2480 -VPU_NUMBER_OF_SHAVES 4

-VPU_NUMBER_OF_CMX_SLICES 4 -m

/home/zxx/open_model_zoo/tools/downloader/intel/person-vehicle-bike-detection-crossroad-0078/FP32/person-vehicle-bike-detection-crossroad-0078.xml

-그만큼

/home/zxx/open_model_zoo/tools/downloader/intel/person-vehicle-bike-detection-crossroad-0078/FP32/person-vehicle-bike-detection-crossroad-0078.blob

소스 코드 cpp에서 라인 186의 클래스를 "crossed-person"으로 수정합니다.

sudo 청소

sudo 빌드 빌드

수행

./cnn-demo / dev / video2 path / person-vehicle-bike-detection-crossroad-0078.blob left

이 모듈을 사용하여 궁극적 인 추론 경험을 얻으십시오.

다음이 표시됩니다.

여기에 사진 설명 삽입

(모듈에서 실시간 디스플레이 경험을 얻을 수 있습니다) 간단한 데모는 매우 성공적입니다.

8.2 모듈 권장 사항 :

여기에 사진 설명 삽입여기에 사진 설명 삽입

                   经过推理加速的实时目标检测

Movidius를 포함한 소프트웨어 및 하드웨어 모듈

VPU 칩, 다중 카메라 관성 추적 시스템 (양안 추적 시스템 + 전면 카메라 + 깊이 카메라). 주류 "시각 관성 내비게이션 융합 SLAM 솔루션"과 맞춤형 VPU (시각 프로세서) 가속을 통해 소프트웨어 및 하드웨어 협업 최적화 후 놀라운 안정성을 달성 할 수 있습니다. 또한, 위에서 설명한 멀티 카메라 추적 시스템에서 깊이 카메라는 주로 제스처 추적에 사용되고 전면 카메라는 사진 촬영에 사용됩니다. 실제로 vslam 공간 추적에 참여하는 쌍안 시스템은 실제로 두 대의 카메라로 구성된 쌍안 시스템입니다.

실제 사용시 CPU, pfs의 추론 가속도가 80 이상에 도달 할 수 있고 전력 소비가 매우 낮으며 착륙 응용 프로그램에 매우 적합합니다. 필요한 경우 Mr. Ye에게 문의하십시오. 이메일 : [email protected]

공개 계정 DeepAI Vision 팔로우를 환영합니다

여기에 사진 설명 삽입

저자 : cv transfer package Man

내 Douyin, Bilibili, csdn 블로그 검색을 팔로우하는 것을 환영합니다 : cv tune package man

참고

[1] https://blog.csdn.net/qq_46098574/article/details/107334954

[2] https://blog.csdn.net/qq_46098574/article/details/105615297

[3] https://blog.csdn.net/kan2016/article/details/97371100

[4] https://blog.csdn.net/qq_46098574/article/details/107742860

추천

출처blog.csdn.net/qq_46098574/article/details/108397541