텍사스 인스트루먼트 - 로고

Texas Instruments AM6x 다중 카메라 개발

Texas-Instruments-AM6x-다중 카메라 제품 개발

명세서

  • 제품 이름: AM6x 제품군
  • 지원되는 카메라 유형: AM62A(ISP 내장 또는 미장착), AM62P(ISP 내장)
  • 카메라 출력 데이터: AM62A(Raw/YUV/RGB), AM62P(YUV/RGB)
  • ISP HWA: AM62A(예), AM62P(아니요)
  • 딥러닝 HWA: AM62A(예), AM62P(아니요)
  • 3D 그래픽 HWA: AM62A(아니요), AM62P(예)

AM6x에서의 다중 카메라 애플리케이션 소개:

  • 내장된 카메라는 현대 비전 시스템에서 중요한 역할을 합니다.
  • 시스템에 여러 대의 카메라를 활용하면 기능이 향상되고 단일 카메라로는 수행할 수 없는 작업이 가능해집니다.

여러 대의 카메라를 사용하는 응용 프로그램:

  • 보안 감시: 감시 범위, 객체 추적 및 인식 정확도가 향상됩니다.
  • 둘러싸다 View: 장애물 감지 및 객체 조작과 같은 작업에 스테레오 비전을 제공합니다.
  • 객실 레코더 및 카메라 미러 시스템: 확장된 커버리지를 제공하고 사각지대를 제거합니다.
  • 의료 영상: 수술 탐색 및 내시경 검사의 정확도를 향상시킵니다.
  • 드론 및 항공 이미징: 다양한 응용 분야에 맞게 다양한 각도에서 고해상도 이미지를 캡처합니다.

여러 개의 CSI-2 카메라를 SoC에 연결:
여러 대의 CSI-2 카메라를 SoC에 연결하려면 사용 설명서에 제공된 지침을 따르세요. 각 카메라가 SoC의 지정된 포트에 올바르게 정렬되고 연결되었는지 확인하세요.

응용 프로그램 노트
AM6x에서 다중 카메라 애플리케이션 개발

Jianzhong Xu, 쿠타이바 살레

추상적인
본 보고서는 AM6x 제품군에 탑재된 여러 대의 CSI-2 카메라를 활용한 애플리케이션 개발에 대해 설명합니다. AM62A SoC에 탑재된 4대의 카메라를 기반으로 딥러닝 기반 객체 감지 레퍼런스 설계를 성능 분석과 함께 제시합니다. 본 설계의 일반 원리는 AM62x 및 AM62P와 같이 CSI-2 인터페이스를 사용하는 다른 SoC에도 적용됩니다.

소개

내장형 카메라는 최신 비전 시스템에서 중요한 역할을 합니다. 시스템에 여러 대의 카메라를 사용하면 시스템의 기능이 확장되고 단일 카메라로는 불가능한 기능들을 구현할 수 있습니다. 다음은 몇 가지 예시입니다.amp여러 개의 내장 카메라를 사용하는 응용 프로그램:

  • 보안 감시: 전략적으로 배치된 여러 대의 카메라가 포괄적인 감시 범위를 제공합니다. 파노라마 촬영이 가능합니다. views, 사각지대를 줄이고, 객체 추적 및 인식의 정확도를 높여 전반적인 보안 조치를 개선합니다.
  • 둘러싸다 View: 여러 대의 카메라를 사용하여 스테레오 비전 설정을 구축하여 3차원 정보와 깊이 추정을 가능하게 합니다. 이는 자율주행차의 장애물 감지, 로봇 공학의 정밀한 물체 조작, 증강 현실 경험의 사실성 향상과 같은 작업에 필수적입니다.
  • 캐빈 레코더 및 카메라 미러 시스템: 여러 대의 카메라가 장착된 차량 캐빈 레코더는 단일 프로세서를 사용하여 더 넓은 시야를 확보할 수 있습니다. 마찬가지로, 두 대 이상의 카메라가 장착된 카메라 미러 시스템은 운전자의 시야를 확장할 수 있습니다. view 차량의 모든 측면에서 사각지대를 없애줍니다.
  • 의료 영상: 수술 내비게이션과 같은 의료 영상 작업에는 여러 대의 카메라를 사용하여 외과의에게 다양한 시점을 제공하여 정확도를 높일 수 있습니다. 내시경 검사에서는 여러 대의 카메라를 통해 내부 장기를 면밀히 검사할 수 있습니다.
  • 드론 및 항공 촬영: 드론에는 다양한 각도에서 고해상도 이미지나 영상을 촬영할 수 있는 여러 대의 카메라가 장착된 경우가 많습니다. 이는 항공 촬영, 농업 모니터링, 토지 측량 등의 분야에 유용합니다.
  • 마이크로프로세서의 발전으로 여러 대의 카메라를 하나의 SoC(System-on-Chip)에 통합할 수 있게 되었습니다.
    (SoC)를 통해 컴팩트하고 효율적인 솔루션을 제공합니다. 고성능 비디오/비전 처리 및 딥 러닝 가속 기능을 갖춘 AM62Ax SoC는 위에서 언급한 사용 사례에 이상적인 장치입니다. 또 다른 AM6x 장치인 AM62P는 고성능 임베디드 3D 디스플레이 애플리케이션을 위해 설계되었습니다. 3D 그래픽 가속 기능을 갖춘 AM62P는 여러 카메라의 이미지를 손쉽게 연결하여 고해상도 파노라마 이미지를 생성할 수 있습니다. viewAM62A/AM62P SoC의 혁신적인 기능은 [4], [5], [6] 등과 같은 다양한 출판물에 소개되었습니다. 이 애플리케이션 노트에서는 해당 기능 설명을 반복하지 않고 대신 AM2A/AM62P의 임베디드 비전 애플리케이션에 여러 CSI-62 카메라를 통합하는 데 중점을 둡니다.
  • 표 1-1은 이미지 처리 측면에서 AM62A와 AM62P의 주요 차이점을 보여줍니다.

표 1-1. AM62A와 AM62P의 영상 처리 차이점

시스템온칩(SoC) AM62A AM62P
지원되는 카메라 유형 내장 ISP가 있거나 없거나 내장 ISP 포함
카메라 출력 데이터 원시/YUV/RGB YUV/RGB
ISP HWA 아니요
딥러닝 HWA 아니요
3D 그래픽 HWA 아니요

여러 대의 CSI-2 카메라를 SoC에 연결
AM6x SoC의 카메라 하위 시스템에는 그림 2-1에 표시된 대로 다음과 같은 구성 요소가 포함되어 있습니다.

  • MIPI D-PHY 수신기: 외부 카메라로부터 비디오 스트림을 수신하며, 4개 레인에 대해 데이터 레인당 최대 1.5Gbps를 지원합니다.
  • CSI-2 수신기(RX): D-PHY 수신기로부터 비디오 스트림을 수신하여 ISP로 직접 전송하거나 DDR 메모리에 데이터를 저장합니다. 이 모듈은 최대 16개의 가상 채널을 지원합니다.
  • SHIM: 캡처된 스트림을 DMA를 통해 메모리로 전송할 수 있도록 하는 DMA 래퍼입니다. 이 래퍼는 여러 개의 DMA 컨텍스트를 생성할 수 있으며, 각 컨텍스트는 CSI-2 수신기의 가상 채널에 해당합니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(2)

SoC에 CSI-2 RX 인터페이스가 하나뿐이더라도 AM6x에서는 CSI-2 RX의 가상 채널을 사용하여 여러 대의 카메라를 지원할 수 있습니다. 여러 카메라 스트림을 결합하여 단일 SoC로 전송하려면 외부 CSI-2 집계 구성 요소가 필요합니다. 다음 섹션에서 설명하는 두 가지 유형의 CSI-2 집계 솔루션을 사용할 수 있습니다.

SerDes를 사용하는 CSI-2 애그리게이터
여러 카메라 스트림을 결합하는 한 가지 방법은 직렬화 및 역직렬화(SerDes) 솔루션을 사용하는 것입니다. 각 카메라의 CSI-2 데이터는 직렬 변환기를 통해 변환되어 케이블을 통해 전송됩니다. 역직렬 변환기는 케이블(카메라당 하나의 케이블)에서 전송된 모든 직렬화된 데이터를 수신하고, 스트림을 다시 CSI-2 데이터로 변환한 다음, 인터리빙된 CSI-2 스트림을 SoC의 단일 CSI-2 RX 인터페이스로 전송합니다. 각 카메라 스트림은 고유한 가상 채널로 식별됩니다. 이 통합 솔루션은 카메라에서 SoC까지 최대 15m의 장거리 연결을 허용하는 추가적인 이점을 제공합니다.

AM3x Linux SDK에서 지원되는 FPD-Link 또는 V6-Link 직렬 변환기 및 역직렬 변환기(SerDes)는 이러한 유형의 CSI-2 집계 솔루션에 가장 널리 사용되는 기술입니다. FPD-Link와 V3-Link 역직렬 변환기는 모두 [7]에서 설명한 대로 모든 카메라를 동기화하기 위해 프레임 동기 신호를 전송하는 데 사용할 수 있는 백 채널을 가지고 있습니다.
그림 2-2은 예를 보여줍니다.ampSerDes를 사용하여 여러 대의 카메라를 단일 AM6x SoC에 연결하는 방법.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(3)

전amp이 통합 솔루션의 핵심은 Arducam V3Link 카메라 솔루션 키트에서 찾을 수 있습니다. 이 키트에는 4개의 CSI-2 카메라 스트림을 통합하는 디시리얼라이저 허브와 4쌍의 V3Link 시리얼라이저, 그리고 FAKRA 동축 케이블과 22핀 FPC 케이블을 포함한 IMX219 카메라가 포함되어 있습니다. 나중에 설명할 참조 설계는 이 키트를 기반으로 합니다.

SerDes를 사용하지 않는 CSI-2 애그리게이터
이러한 유형의 집계기는 여러 대의 MIPI CSI-2 카메라와 직접 인터페이스하여 모든 카메라의 데이터를 단일 CSI-2 출력 스트림으로 집계할 수 있습니다.

그림 2-3은 예를 보여줍니다.amp이러한 시스템의 le. 이러한 유형의 집계 솔루션은 직렬화기/역직렬화기를 사용하지 않지만, CSI-2 데이터 전송 최대 거리(최대 30cm)에 의해 제한됩니다. AM6x Linux SDK는 이러한 유형의 CSI-2 집계기를 지원하지 않습니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(4)

소프트웨어에서 여러 카메라 활성화

카메라 서브시스템 소프트웨어 아키텍처
그림 3-1은 그림 62-62의 HW 시스템에 해당하는 AM2A/AM2P Linux SDK의 카메라 캡처 시스템 소프트웨어의 고수준 블록 다이어그램을 보여줍니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(5)

  • 이 소프트웨어 아키텍처는 그림 2-2와 같이 SoC가 SerDes를 사용하여 여러 카메라 스트림을 수신할 수 있도록 합니다. FPD-Link/V3-Link SerDes는 각 카메라에 고유한 I2C 주소와 가상 채널을 할당합니다. 각 카메라에 대해 고유한 I2C 주소로 고유한 장치 트리 오버레이를 생성해야 합니다. CSI-2 RX 드라이버는 고유한 가상 채널 번호를 사용하여 각 카메라를 인식하고 카메라 스트림당 DMA 컨텍스트를 생성합니다. 모든 DMA 컨텍스트에 대해 비디오 노드가 생성됩니다. 각 카메라의 데이터는 DMA를 통해 수신되어 메모리에 저장됩니다. 사용자 공간 애플리케이션은 각 카메라에 해당하는 비디오 노드를 사용하여 카메라 데이터에 액세스합니다. 예:amp이 소프트웨어 아키텍처를 사용하는 방법은 4장 참조 설계에 나와 있습니다.
  • V4L2 프레임워크를 준수하는 모든 특정 센서 드라이버는 이 아키텍처에서 플러그 앤 플레이가 가능합니다. Linux SDK에 새 센서 드라이버를 통합하는 방법에 대해서는 [8]을 참조하십시오.

이미지 파이프라인 소프트웨어 아키텍처

  • AM6x Linux SDK는 다양한 애플리케이션의 이미지 처리 구성 요소를 통합하는 데 사용할 수 있는 GStreamer(GST) 프레임워크를 제공합니다. SoC의 하드웨어 가속기(HWA)에는 비전 전처리 가속기(VPAC) 또는 ISP, 비디오 인코더/디코더, 딥 러닝 컴퓨팅 엔진 등이 있으며, GST를 통해 접근합니다. pluginsVPAC(ISP) 자체에는 VISS(Vision Imaging Sub-System), LDC(Lens Distortion Correction), MSC(Multiscalar) 등 여러 블록이 있으며, 각각은 GST 플러그인에 해당합니다.
  • 그림 3-2는 카메라에서 인코딩 또는 딥러닝까지 일반적인 이미지 파이프라인의 블록 다이어그램을 보여줍니다.
    AM62A에서 학습 애플리케이션을 개발합니다. 종단 간 데이터 흐름에 대한 자세한 내용은 EdgeAI SDK 설명서를 참조하세요.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(6)

AM62P의 경우 ISP가 없으므로 이미지 파이프라인이 더 간단합니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(7)

각 카메라에 대해 비디오 노드를 생성함으로써, GStreamer 기반 이미지 파이프라인은 동일한 CSI-2 RX 인터페이스를 통해 연결된 여러 카메라 입력을 동시에 처리할 수 있도록 합니다. 다음 장에서는 다중 카메라 애플리케이션을 위한 GStreamer 기반 참조 설계를 제시합니다.

레퍼런스 디자인

이 장에서는 Arducam V62Link 카메라 솔루션 키트를 사용하여 3대의 CSI-4 카메라를 AM2A에 연결하고 62대 카메라 모두에 대해 객체 감지를 실행하여 AM4A EVM에서 여러 카메라 애플리케이션을 실행하는 참조 설계를 제시합니다.

지원되는 카메라
Arducam V3Link 키트는 FPD-Link/V3-Link 기반 카메라와 Raspberry Pi 호환 CSI-2 카메라 모두와 호환됩니다. 다음 카메라가 테스트되었습니다.

  • D3 엔지니어링 D3RCM-IMX390-953
  • 레오파드 이미징 LI-OV2312-FPDLINKIII-110H
  • Arducam V3Link 카메라 솔루션 키트의 IMX219 카메라

4개의 IMX219 카메라 설정
AM62A 스타터 키트 EVM 빠른 시작 가이드에 제공된 지침에 따라 SK-AM62A-LP EVM(AM62A SK)과 ArduCam V3Link 카메라 솔루션 빠른 시작 가이드를 설정하여 V3Link 키트를 통해 카메라를 AM62A SK에 연결하세요. 플렉스 케이블, 카메라, V3Link 보드, AM62A SK의 핀이 모두 제대로 정렬되어 있는지 확인하세요.

그림 4-1은 이 보고서의 참조 설계에 사용된 설정을 보여줍니다. 설정의 주요 구성 요소는 다음과 같습니다.

  • 1X SK-AM62A-LP EVM 보드
  • 1X Arducam V3Link d-ch 어댑터 보드
  • Arducam V3Link를 SK-AM62A에 연결하는 FPC 케이블
  • 4X V3Link 카메라 어댑터(시리얼라이저)
  • V3Link 직렬 변환기를 V3Link d-ch 키트에 연결하기 위한 4X RF 동축 케이블
  • 4X IMX219 카메라
  • 카메라를 직렬 변환기에 연결하기 위한 4X CSI-2 22핀 케이블
  • 케이블: HDMI 케이블, SK-AM62A-LP에 전원을 공급하는 USB-C 케이블, V3Link d-ch 키트에 공급되는 12V 전원
  • 그림 4-1에 표시되지 않은 기타 구성 요소: micro-SD 카드, SK-AM62A-LP에 액세스하기 위한 micro-USB 케이블, 스트리밍을 위한 이더넷

Texas-Instruments-AM6x-현상-다중-카메라-그림-(8)

카메라 및 CSI-2 RX 인터페이스 구성
Arducam V3Link 빠른 시작 가이드에 제공된 지침에 따라 소프트웨어를 설정하세요. 카메라 설정 스크립트인 setup-imx219.sh를 실행하면 카메라 형식, CSI-2 RX 인터페이스 형식, 그리고 각 카메라에서 해당 비디오 노드까지의 경로가 올바르게 설정됩니다. 4개의 IMX219 카메라에 대해 4개의 비디오 노드가 생성됩니다. "v4l2-ctl –list-devices" 명령을 실행하면 아래와 같이 모든 V4L2 비디오 장치가 표시됩니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(9)

tiscsi2rx에는 비디오 노드 6개와 미디어 노드 1개가 있습니다. 각 비디오 노드는 CSI2 RX 드라이버가 할당한 DMA 컨텍스트에 해당합니다. 6개의 비디오 노드 중 4개는 아래 미디어 파이프 토폴로지에서 볼 수 있듯이 4대의 IMX219 카메라에 사용됩니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(10)

위에 표시된 것처럼 미디어 엔티티 30102000.ticsi2rx에는 소스 패드가 6개 있지만, 처음 4개만 사용되며, 각 패드는 IMX219 하나에 사용됩니다. 미디어 파이프 토폴로지는 그래픽으로도 표현할 수 있습니다. 다음 명령을 실행하여 도트를 생성합니다. file:

Texas-Instruments-AM6x-현상-다중-카메라-그림-(11)

그런 다음 Linux 호스트 PC에서 아래 명령을 실행하여 PNG를 생성합니다. file:Texas-Instruments-AM6x-현상-다중-카메라-그림-(12)

그림 4-2는 위에 제시된 명령을 사용하여 생성된 그림입니다. 그림 3-1의 소프트웨어 아키텍처 구성 요소는 이 그래프에서 확인할 수 있습니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(13)

4개의 카메라에서 스트리밍
하드웨어와 소프트웨어가 모두 제대로 설정되면 사용자 공간에서 다중 카메라 애플리케이션을 실행할 수 있습니다. AM62A의 경우, 좋은 화질을 얻으려면 ISP를 조정해야 합니다. ISP 조정 방법은 AM6xA ISP 조정 가이드를 참조하십시오. 다음 섹션에서는 예시를 설명합니다.amp디스플레이에 카메라 데이터를 스트리밍하고, 네트워크에 카메라 데이터를 스트리밍하고, 카메라 데이터를 저장하는 방법 files.

표시할 스트리밍 카메라 데이터
이 멀티 카메라 시스템의 기본 응용 분야는 모든 카메라의 비디오를 동일한 SoC에 연결된 디스플레이로 스트리밍하는 것입니다. 다음은 GStreamer 파이프라인 예시입니다.amp219개의 IMX4를 디스플레이에 스트리밍하는 과정(파이프라인의 비디오 노드 번호와 vXNUMXl-subdev 번호는 재부팅할 때마다 변경될 가능성이 높음).

Texas-Instruments-AM6x-현상-다중-카메라-그림-(14) Texas-Instruments-AM6x-현상-다중-카메라-그림-(15)

이더넷을 통한 카메라 데이터 스트리밍
동일한 SoC에 연결된 디스플레이로 스트리밍하는 대신, 카메라 데이터를 이더넷을 통해 스트리밍할 수도 있습니다. 수신 측은 다른 AM62A/AM62P 프로세서 또는 호스트 PC일 수 있습니다. 다음은 예시입니다.amp이더넷을 통해 카메라 데이터를 스트리밍하는 방법(단순화를 위해 두 대의 카메라 사용)(파이프라인에 사용된 인코더 플러그인 참고):

Texas-Instruments-AM6x-현상-다중-카메라-그림-(16)

다음은 예입니다amp카메라 데이터를 수신하고 다른 AM62A/AM62P 프로세서의 디스플레이로 스트리밍하는 방법:

Texas-Instruments-AM6x-현상-다중-카메라-그림-(17)

카메라 데이터 저장 Files
디스플레이나 네트워크를 통해 스트리밍하는 대신 카메라 데이터를 로컬에 저장할 수 있습니다. files. 아래 파이프라인은 각 카메라의 데이터를 저장합니다. file (예로 두 대의 카메라를 사용함amp(단순화를 위해 le로 표기).

Texas-Instruments-AM6x-현상-다중-카메라-그림-(18)Texas-Instruments-AM6x-현상-다중-카메라-그림-(19)

멀티카메라 딥러닝 추론

AM62A에는 최대 7개의 TOPS를 갖춘 딥러닝 가속기(C62x-MMA)가 탑재되어 있어 분류, 객체 감지, 의미 분할 등 다양한 유형의 딥러닝 모델을 실행할 수 있습니다. 이 섹션에서는 AMXNUMXA가 ​​XNUMX개의 서로 다른 카메라 피드에서 XNUMX개의 딥러닝 모델을 동시에 실행하는 방법을 보여줍니다.

모델 선택
TI의 EdgeAI-ModelZoo는 수백 개의 최첨단 모델을 제공하며, 이 모델들은 기존 학습 프레임워크에서 임베디드 친화적인 포맷으로 변환/내보내져 C7x-MMA 딥러닝 가속기로 오프로드될 수 있습니다. 클라우드 기반 Edge AI Studio Model Analyzer는 사용하기 쉬운 "모델 선택" 도구를 제공합니다. TI EdgeAI-ModelZoo에서 지원하는 모든 모델을 포함하도록 동적으로 업데이트됩니다. 이 도구는 사전 경험이 필요 없으며, 원하는 모델에 필요한 기능을 입력할 수 있는 사용하기 쉬운 인터페이스를 제공합니다.

이 다중 카메라 딥러닝 실험에는 TFL-OD-2000-ssd-mobV1-coco-mlperf가 선택되었습니다. 이 다중 객체 감지 모델은 300x300 입력 해상도를 갖는 TensorFlow 프레임워크를 기반으로 개발되었습니다. 표 4-1은 약 80개의 서로 다른 클래스를 갖는 cCOCO 데이터셋을 사용하여 학습된 이 모델의 주요 특징을 보여줍니다.

표 4-1. TFL-OD-2000-ssd-mobV1-coco-mlperf 모델의 주요 특징.

모델 해결 프레임 속도 mAP 50%

COCO의 정확도

지연 시간/프레임(ms) DDR 흑백

활용도(MB/프레임)

TFL-OD-2000-ssd-

mobV1-coco-mlperf

다중 객체 감지 300×300 ~152 15.9 6.5 18.839

파이프라인 설정
그림 4-3은 4개 카메라로 구성된 딥러닝 GStreamer 파이프라인을 보여줍니다. TI는 GStreamer 제품군을 제공합니다. plugins 일부 미디어 처리 및 딥러닝 추론을 하드웨어 가속기로 오프로드할 수 있습니다. 일부amp이들 중 plugins tiovxisp, tiovxmultiscaler, tiovxmosaic, tidlinferer를 포함합니다. 그림 4-3의 파이프라인에는 필요한 모든 것이 포함되어 있습니다. plugins 4개 카메라 입력에 대한 다중 경로 GStreamer 파이프라인의 경우, 각각 미디어 전처리, 딥러닝 추론 및 후처리가 포함됩니다. 복제된 plugins 각 카메라 경로는 더 쉬운 설명을 위해 그래프에 쌓여 있습니다.
사용 가능한 하드웨어 리소스는 네 개의 카메라 경로에 균등하게 분배됩니다. 예를 들어, AM62A에는 MSC0과 MSC1이라는 두 개의 이미지 멀티스케일러가 있습니다. 파이프라인은 MSC0을 카메라 1과 카메라 2 경로 처리에, MSC1을 카메라 3과 카메라 4 경로 처리에 명시적으로 할당합니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(21)

네 개의 카메라 파이프라인의 출력은 tiovxmosaic 플러그인을 사용하여 축소 및 연결됩니다. 출력은 단일 화면에 표시됩니다. 그림 4-4는 객체 감지를 실행하는 딥러닝 모델에서 네 대의 카메라 출력을 보여줍니다. 각 파이프라인(카메라)은 30FPS로 실행되며, 총 120FPS입니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(22)

다음은 그림 4-3에 표시된 멀티카메라 딥러닝 사용 사례에 대한 전체 파이프라인 스크립트입니다.

Texas-Instruments-AM6x-현상-다중-카메라-그림-(23) Texas-Instruments-AM6x-현상-다중-카메라-그림-(24)

성과 분석

V3Link 보드와 AM62A SK를 사용하는 4대의 카메라 설정은 화면에 직접 표시, 이더넷(4개의 UDP 채널)을 통한 스트리밍, 4개의 별도 채널에 녹화를 포함한 다양한 애플리케이션 시나리오에서 테스트되었습니다. files, 그리고 딥러닝 추론을 활용했습니다. 각 실험에서 프레임 속도와 CPU 코어 사용률을 모니터링하여 전체 시스템의 성능을 살펴보았습니다.

그림 4-4에서 볼 수 있듯이, 딥러닝 파이프라인은 tiperfoverlay GStreamer 플러그인을 사용하여 CPU 코어 부하를 화면 하단에 막대 그래프로 표시합니다. 기본적으로 그래프는 XNUMX초마다 업데이트되어 부하를 사용률 백분율로 표시합니다.tage. tiperfoverlay GStreamer 플러그인 외에도 perf_stats 도구는 터미널에서 직접 핵심 성능을 표시하는 두 번째 옵션이며 저장 옵션도 있습니다. file이 도구는 tTiperfoverlay보다 더 정확합니다. tTiperfoverlay는 그래프를 그려 화면에 오버레이하기 위해 ARMm 코어와 DDR에 추가적인 부하를 가하기 때문입니다. perf_stats 도구는 주로 이 문서에 제시된 모든 테스트 사례에서 하드웨어 사용률 결과를 수집하는 데 사용됩니다. 이 테스트에서 연구된 주요 프로세싱 코어와 가속기에는 메인 프로세서(A53 Arm 코어 4개 @ 1.25GHz), 딥 러닝 가속기(C7x-MMA @ 850MHz), VISS와 멀티스케일러(MSC0 및 MSC1)를 탑재한 VPAC(ISP), 그리고 DDR 연산이 포함됩니다.

표 5-1은 4대의 카메라를 디스플레이에 스트리밍하고, 이더넷을 통해 스트리밍하고, 4개의 별도 카메라에 녹화하는 등 3가지 사용 사례에 대해 4대의 카메라와 함께 AM62A를 사용할 때의 성능 및 리소스 활용도를 보여줍니다. files. 각 사용 사례에서 두 가지 테스트가 구현됩니다. 카메라만 사용하는 경우와 딥 러닝 추론을 사용하는 경우입니다. 또한 표 5-1의 첫 번째 행은 사용자 애플리케이션 없이 AM62A에서 운영 체제만 실행했을 때의 하드웨어 사용률을 보여줍니다. 이는 다른 테스트 사례의 하드웨어 사용률을 평가할 때 비교 기준으로 사용됩니다. 표에서 볼 수 있듯이 딥 러닝과 화면 디스플레이가 있는 4대의 카메라는 각각 30FPS로 작동했으며 4대 카메라의 총 120FPS입니다. 이러한 높은 프레임 속도는 딥 러닝 가속기(C7x-MMA) 전체 용량의 86%만으로 달성됩니다. 또한 이 실험에서 딥 러닝 가속기는 1000MHz 대신 850MHz로 클록되었으며 이는 최대 성능의 약 85%에 불과하다는 점에 유의하는 것이 중요합니다.

표 5-1. 화면 표시, 이더넷 스트림, 녹화를 위해 62개의 IMX4 카메라와 함께 사용할 때 AM219A의 성능(FPS) 및 리소스 활용 Files, 그리고 딥러닝 추론 수행

응용 프로그램 n 파이프라인(운영

)

산출 프레임 속도 평균 파이프라인 프레임 속도

MPU A53 @ 1.25

GHz [%]

MCU R5 [%] DLA (C7x- MMA) @ 850

MHz [%]

비스 [%] MSC0 [%] MSC1 [%] DDR

도로 [MB/초]

DDR

Wr [MB/초]

DDR

총 [MB/초]

앱 없음 기준선 작업 없음 NA NA NA 1.87 1 0 0 0 0 560 19 579
카메라 오직 개울 화면으로 화면 30 120 12 12 0 70 61 60 1015 757 1782
이더넷을 통한 스트리밍 PDU: 4

포트 1920×1080

30 120 23 6 0 70 0 0 2071 1390 3461
기록 에게 files 4 file1920×1080 30 120 25 3 0 70 0 0 2100 1403 3503
딥러닝으로 딥러닝: 객체 감지 MobV1- coco 화면 30 120 38 25 86 71 85 82 2926 1676 4602
딥러닝: 객체 감지 MobV1- coco 및 Stream over Ethernet PDU: 4

포트 1920×1080

28 112 84 20 99 66 65 72 4157 2563 6720
딥러닝: 객체 감지 MobV1- coco 및 record to files 4 file1920×1080 28 112 87 22 98 75 82 61 2024 2458 6482

요약
이 애플리케이션 보고서는 AM6x 제품군에서 멀티 카메라 애플리케이션을 구현하는 방법을 설명합니다. 보고서에는 Arducam의 V3Link 카메라 솔루션 키트와 AM62A SK EVM을 기반으로 하는 참조 설계가 포함되어 있으며, 스트리밍 및 객체 감지와 같이 4대의 IMX219 카메라를 사용하는 여러 카메라 애플리케이션이 포함되어 있습니다. 사용자는 Arducam의 V3Link 카메라 솔루션 키트를 구매하여 이러한 애플리케이션을 직접 구현해 볼 것을 권장합니다.amples. 이 보고서는 또한 화면에 표시, 이더넷을 통한 스트리밍, 녹화를 포함한 다양한 구성에서 4대의 카메라를 사용하는 동안 AM62A의 성능에 대한 자세한 분석을 제공합니다. files. 또한 AM62A가 ​​4개의 개별 카메라 스트림에 대해 병렬로 딥 러닝 추론을 수행하는 기능을 보여줍니다. 이러한 ex 실행에 대한 질문이 있으시면amp문의사항은 TI E2E 포럼에 제출하세요.

참고문헌

  1. AM62A 스타터 키트 EVM 빠른 시작 가이드
  2. ArduCam V3Link 카메라 솔루션 빠른 시작 가이드
  3. AM62A에 대한 Edge AI SDK 설명서
  4. 에너지 효율적인 AM62A 프로세서를 사용하는 Edge AI 스마트 카메라
  5. AM62A의 카메라 미러 시스템
  6. AM62A의 운전자 및 탑승자 모니터링 시스템
  7. 서라운드용 쿼드 채널 카메라 애플리케이션 View 및 CMS 카메라 시스템
  8. CIS-2 센서 활성화에 대한 AM62Ax Linux Academy
  9. 엣지 AI 모델주
  10. 엣지 AI 스튜디오
  11. Perf_stats 도구

이 애플리케이션 노트에서 언급된 TI 부품:

중요 공지 및 면책 조항

TI는 기술 및 신뢰성 데이터(데이터 시트 포함), 설계 리소스(참조 설계 포함), 애플리케이션 또는 기타 설계 조언을 제공합니다. WEB 도구, 안전 정보 및 기타 리소스는 모든 오류가 있는 "있는 그대로"이며 상품성, 특정 부분에 대한 적합성에 대한 묵시적 보증을 포함하되 이에 국한되지 않는 모든 명시적 및 묵시적 보증을 부인합니다. .

이 리소스는 TI 제품을 사용하여 설계하는 숙련된 개발자를 대상으로 합니다. 귀하는 전적으로 책임을 져야 합니다.

  1. 귀하의 애플리케이션에 적합한 TI 제품 선택
  2. 애플리케이션 설계, 검증 및 테스트
  3. 귀하의 신청서가 해당 표준 및 기타 안전, 보안, 규정 또는 기타 요구 사항을 충족하는지 확인합니다.

이 리소스는 예고 없이 변경될 수 있습니다. TI는 이 리소스에 설명된 TI 제품을 사용하는 애플리케이션 개발에만 이 리소스를 사용할 수 있도록 허용합니다. 이 리소스의 다른 복제 및 표시는 금지됩니다. 다른 TI 지적 재산권이나 제3자의 지적 재산권에 대한 라이선스는 부여되지 않습니다. TI는 이 리소스 사용으로 인해 발생하는 모든 청구, 손해, 비용, 손실 및 책임에 대해 책임을 지지 않으며, 귀하는 TI와 그 대리인을 면책해야 합니다.

TI의 제품은 TI의 판매 약관 또는 다음에서 제공되는 기타 해당 약관에 따라 제공됩니다. 티닷컴 또는 그러한 TI 제품과 함께 제공됩니다. TI의 이러한 리소스 제공은 TI 제품에 대한 TI의 해당 보증 또는 보증 부인을 확장하거나 변경하지 않습니다.

TI는 귀하가 제안한 추가 또는 다른 조건에 반대하고 거부합니다.

중요 공지

  • 우편 주소: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
  • 저작권 © 2024, Texas Instruments Incorporated

자주 묻는 질문

질문: AM6x 제품군에 모든 유형의 카메라를 사용할 수 있나요?

AM6x 제품군은 ISP 내장 여부와 관계없이 다양한 카메라 유형을 지원합니다. 지원되는 카메라 유형에 대한 자세한 내용은 사양을 참조하십시오.

: AM62A와 AM62P의 이미지 처리의 주요 차이점은 무엇입니까?

주요 차이점은 지원되는 카메라 유형, 카메라 출력 데이터, ISP HWA, 딥러닝 HWA, 3D 그래픽 HWA의 존재 여부입니다. 자세한 비교는 사양 섹션을 참조하세요.

 

문서 / 리소스

Texas Instruments AM6x 다중 카메라 개발 [PDF 파일] 사용자 가이드
AM62A, AM62P, AM6x 다중 카메라 개발, AM6x, 다중 카메라 개발, 다중 카메라, 카메라

참고문헌

댓글을 남겨주세요

이메일 주소는 공개되지 않습니다. 필수 항목은 표시되어 있습니다. *