KR-20260060785-A - MOVABLE APPARATUS WITH NEURAL PROCESSING UNIT AND MULTI-CHANNEL CAMERA
Abstract
본 명세서의 일 예시에 따르면, 이동가능한 기기가 제시된다. 상기 이동가능한 기기는, 센서와; 복수의 카메라들과; 상기 복수의 카메라들로부터 이미지들을 입력받아 목표물을 검출 및 추적하는 NPU(neural processing unit)와; 그리고 상기 센서를 통하여 이동 방향을 판단하고, 상기 복수의 카메라들 중에서 상기 이동 방향에 배치된 특정 카메라의 FPS(frame per second)는 증가시키고, 다른 방향에 배치된 임의 카메라의 FPS를 저감시키는 제어부를 포함할 수 있다.
Inventors
- 유하준
Assignees
- 주식회사 딥엑스
Dates
- Publication Date
- 20260506
- Application Date
- 20241025
Claims (20)
- 이동가능한 기기로서, 센서와; 복수의 카메라들과; 상기 복수의 카메라들로부터 이미지들을 입력받아 목표물을 검출 및 추적하는 NPU(neural processing unit)와; 그리고 상기 센서를 통하여 이동 방향을 판단하고, 상기 복수의 카메라들 중에서 상기 이동 방향에 배치된 특정 카메라의 FPS(frame per second)는 증가시키고, 다른 방향에 배치된 임의 카메라의 FPS를 저감시키는 제어부를 포함하는, 이동가능한 기기.
- 제1항에 있어서, 이동 속도가 증가하는 경우, 상기 복수의 카메라들 중에서 상기 이동 방향에 배치된 특정 카메라의 FPS는 추가 증가되며, 상기 다른 방향에 배치된 임의 카메라의 FPS는 추가 저감되는, 이동가능한 기기.
- 제1항에 있어서, 상기 제어부는 상기 이동 방향에 배치된 특정 카메라의 FPS를 증가시키기 위하여, 상기 특정 카메라의 ISP(image signal processor)에게 제1 제어 신호를 전달하고, 상기 다른 방향에 배치된 임의 카메라의 FPS를 저감시키기 위하여, 상기 다른 카메라의 ISP에게 제2 제어 신호를 전달하는, 이동가능한 기기
- 제1항에 있어서, 상기 복수의 카메라를 위한 카메라 조정부를 더 포함하는, 이동가능한 기기.
- 제4항에 있어서, 상기 카메라 조정부는 복수의 업/다운샘플러와, 그리고 다중화기를 포함하는, 이동가능한 기기.
- 제5항에 있어서, 상기 복수의 업/다운샘플러의 개수는 상기 복수의 카메라의 개수와 동일한, 이동가능한 기기.
- 제5항에 있어서, 상기 복수의 업/다운샘플러는 제1 업/다운샘플러와 제2 업/다운샘플러를 포함하는, 이동가능한 기기.
- 제5항에 있어서, 상기 복수의 업/다운샘플러 중에서 제1 업/다운샘플러는 상기 이동 방향에 배치된 특정 카메라로부터의 출력에 대하여 업샘플링을 수행하여, FPS를 증가시키는, 이동가능한 기기.
- 제5항에 있어서, 상기 복수의 업/다운샘플러 중에서 제2 업/다운샘플러는 상기 다른 방향에 배치된 임의 카메라로부터의 출력에 대하여 다운샘플링을 수행하여, FPS를 저감시키는, 이동가능한 기기.
- 제5항에 있어서, 상기 다중화기는 상기 이동 방향에 기초하여, 상기 복수의 카메라들 중 제1 카메라로부터의 제1 이미지들과 제2 카메라로부터의 제2 이미지들의 셔플링 순서를 결정하는, 이동가능한 기기.
- 제1항에 있어서, 상기 NPU는 상기 복수의 카메라들 중 제1 카메라로부터의 이미지들을 입력받아 목표물을 검출 및 추적하는 제1 NPU와, 그리고 상기 복수의 카메라들 중 제2 카메라로부터의 이미지들을 입력받아, 상기 목표물을 검출 및 추적하는 제2 NPU를 포함하는, 이동가능한 기기.
- 제11항에 있어서, 상기 제어부는 상기 이동 방향에 배치된 상기 특정 카메라를 위한 특정 NPU의 동작 클럭을 증가시키고, 상기 다른 방향에 배치된 상기 임의 카메라를 위한 임의 NPU의 동작 클럭은 낮추는, 이동가능한 기기.
- 제1항에 있어서, 상기 NPU는 사용자로부터의 음성 명령어를 텍스트로 변환하는 단계와; 시각-언어 모델을 활용하여 텍스트 의미와 유사성 있는 목표를 식별 및 추적하는 단계를 수행하는, 이동가능한 기기.
- 제1항에 있어서, 상기 NPU는 촬영된 이미지나 영상을 바탕으로 시각-언어 모델을 활용하여 자동으로 텍스트 기반 보고서를 생성하는 단계를 수행하는, 이동가능한 기기.
- 제1항에 있어서, 상기 이동가능한 기기는, 드론, UAV(unmanned aerial vehicle), 로봇, 또는 자율주행 자동차인, 이동가능한 기기.
- 이동가능한 기기의 동작 방법으로서, 복수의 카메라들로부터 이미지들을 입력받아 목표물을 검출 및 추적하는 단계와; 센서를 통하여 이동 방향을 판단하는 단계와; 상기 복수의 카메라들 중에서 상기 이동 방향에 배치된 특정 카메라의 FPS(frame per second)는 증가시키는 단계와; 그리고 다른 방향에 배치된 임의 카메라의 FPS를 저감시키는 단계를 포함하는 방법.
- 제16항에 있어서, 이동 속도가 증가하는 경우, 상기 복수의 카메라들 중에서 상기 이동 방향에 배치된 특정 카메라의 FPS를 추가 증가시키는 단계와; 그리고 상기 다른 방향에 배치된 임의 카메라의 FPS를 추가 저감시키는 단계를 더 포함하는 방법.
- 제16항에 있어서, 상기 이동 방향에 배치된 상기 특정 카메라를 위한 특정 NPU의 동작 클럭을 증가시키는 단계와; 그리고, 상기 다른 방향에 배치된 상기 임의 카메라를 위한 임의 NPU의 동작 클럭은 낮추는 단계를 더 포함하는 방법.
- 제16항에 있어서, 사용자로부터의 음성 명령어를 텍스트로 변환하는 단계와; 시각-언어 모델을 활용하여 텍스트 의미와 유사성 있는 목표를 식별 및 추적하는 단계를 더 포함하는 방법.
- 제16항에 있어서, 촬영된 이미지나 영상을 바탕으로 시각-언어 모델을 활용하여 자동으로 텍스트 기반 보고서를 생성하는 단계를 더 포함하는 방법.
Description
다중 카메라와 신경망반도체를 구비한 이동가능한 기기{MOVABLE APPARATUS WITH NEURAL PROCESSING UNIT AND MULTI-CHANNEL CAMERA} 본 개시는 이동가능한 기기에 관한 것이다. 최근에는 이동가능한 기기에 인공지능 반도체를 탑재하는 것에 관한 연구가 진행되고 있다. 이동가능한 기기에는 대표적으로 자동차, 로봇(robot) 또는 드론(drone) 등이 있다. 예를 들면, 드론은 조종사 없이 자율 비행 또는 무선 전파의 유도에 의해 비행 및 조종이 가능한 비행기나 헬리콥터 모양의 무인항공기(UAV: unmanned aerial vehicle/uninhabited aerial vehicle)을 총칭한다. 예를 들면, 로봇은 조종사 없이 자율 주행 또는 무선 전차의 유도에 의해 주행 및 조종이 가능한 2족 보행 로봇, 4족 보행 로봇, 4륜 구동 로봇 등을 총칭한다. 로봇은 노인 및 장애인을 지원하기 위한 로봇, 공장, 건설 현장을 감시하기 위한 로봇, 공장의 다양한 노동 작업을 수행하기 위한 로봇 등이 있다. 도 1은 예시적인 신경망모델을 설명하는 개략적인 개념도이다. 도 2a은 컨볼루션 신경망(CNN)의 기본 구조를 설명하기 위한 도면이다. 도 2b는 컨볼루션 신경망의 동작을 이해하기 쉽게 나타낸 종합도이다. 도 3은 본 개시의 일 예시에 따른 신경 프로세싱 유닛을 설명하는 개략적인 개념도이다. 도 4a는 본 개시의 일 예시에 적용될 수 있는 복수의 프로세싱 엘리먼트 중 하나의 프로세싱 엘리먼트를 설명하는 개략적인 개념도이다. 도 4b는 본 개시의 일 예시에 적용될 수 있는 SFU를 설명하는 개략적인 개념도이다. 도 5는 도 3에 도시된 신경 프로세싱 유닛(100)의 변형예를 나타낸 예시도이다. 도 6a는 다중 카메라(즉, 다중 채널 카메라)를 구비한 드론을 나타낸다. 도 6b는 드론에 장착되는 다중 카메라를 나타낸다. 도 7a은 도 6a에 도시된 이동가능한 기기의 구성을 예시적으로 나타낸 블록도이다. 도 7b는 도 7a에 도시된 카메라 조정부(1020)와 다중 카메라(1030)의 구성을 상세히 나타낸 블록도이다. 도 8은 제1 개시의 제1 방안을 나타낸 흐름도이다. 도 9a 내지 도 9c는 제1 방안을 나타낸 예시도이다. 도 10은 제1 개시의 제1 방안을 위한 조정부(1020)와 다중 카메라(1030)의 구성을 상세히 나타낸 블록도이다. 도 11은 제1 개시의 제2 방안을 나타낸 흐름도이다. 도 12는 제2 방안을 나타낸 예시도이다. 도 13a는 예시적인 시각-언어 모델의 추론 과정을 나타낸 예시도이다. 도 13b는 예시적인 시각-언어 모델의 활용 예를 나타낸다. 도 14는 예시적인 본 개시의 제1 개시와 제2 개시의 활용 예를 도시한다. 도 15는 제2 개시에 따른 일 방안을 나타낸 흐름도이다. 본 개시의 예시들의 특정한 구조적 내지 단계적 설명들은 단지 본 개시의 개념에 따른 예시를 설명하기 위한 것이다. 따라서 본 개시의 개념에 따른 예시들은 다양한 형태로 실시될 수 있다. 본 개시의 개념에 따른 예시들은 다양한 형태로 실시될 수 있다. 본 개시는 본 개시의 예시들에 한정되는 것으로 해석되어서는 아니 된다. 본 개시의 개념에 따른 예시에 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있다. 이에, 특정 예시들을 도면에 예시하고 본 개시 또는 출원에 대해서 상세하게 설명하고자 한다. 그러나, 이는 본 개시의 개념에 따른 예시를 특정한 개시 형태에 대해 한정하려는 것이 아니다. 본 개시의 개념에 따른 여시는 본 개시의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 제1 및/또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용될 수 있다. 상기 용어들은 본 개시의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다. 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있다. 하지만 복수의 구성요소들 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. 본 개시에서 사용한 용어는 단지 특정한 예시를 설명하기 위해 사용된 것으로, 본 개시를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 개시에서, "포함하다" 또는 "가지다" 등의 용어는 서술된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이다. 따라서 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 한다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 본 개시에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 예시를 설명함에 있어서 본 개시가 속하는 기술 분야에 익히 알려져 있고 본 개시와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 개시의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다. <용어의 정의> 이하, 본 개시에서 제시되는 개시들의 이해를 돕고자, 본 개시에서 사용되는 용어들에 대하여 간략하게 정리하기로 한다. NPU: 신경 프로세싱 유닛(Neural Processing Unit)의 약어로서, CPU(Central processing unit)과 별개로 신경망모델의 연산을 위해 특화된 프로세서를 의미할 수 있다. NN: 신경망(neural network)의 약어로서, 인간의 지능을 모방하기 위하여, 인간 뇌 속의 뉴런들(Neurons)이 시냅스(Synapse)를 통하여 연결되는 것을 모방하여, 노드들을 레이어(Layer: 계층) 구조로 연결시킨, 네트워크를 의미할 수 있다. DNN: 심층 신경망(Deep Neural Network)의 약어로서, 보다 높은 인공 지능을 구현하기 위하여, 신경망의 은닉 레이어의 개수를 늘린 것을 의미할 수 있다. CNN: 컨볼루션 신경망(Convolutional Neural Network)의 약어로서, 인간 뇌의 시각 피질에서 영상을 처리하는 것과 유사한 기능을 하는 신경망이다. 컨볼루션 신경망은 영상처리에 적합한 것으로 알려져 있으며, 입력 데이터의 특징들을 추출하고, 특징들의 패턴을 파악하기에 용이한 것으로 알려져 있다. 이하, 첨부한 도면을 참조하여 본 개시의 바람직한 예시를 설명함으로써, 본 개시를 상세히 설명한다. 이하, 본 개시의 예시를 첨부된 도면을 참조하여 상세하게 설명한다. <인공지능> 인간은 인식(Recognition), 분류(Classification), 추론(Inference), 예측(Predict), 조작/의사결정(Control/Decision making) 등을 할 수 있는 지능을 갖추고 있다. 인공지능(artificial intelligence: AI)은 인간의 지능을 인공적으로 모방하는 것을 의미한다. 인간의 뇌는 뉴런(Neuron)이라는 수많은 신경세포로 이루어져 있다. 각각의 뉴런은 시냅스(Synapse)라고 불리는 연결부위를 통해 수백에서 수천 개의 다른 뉴런들과 연결되어 있다. 인간의 지능을 모방하기 위하여, 생물학적 뉴런의 동작원리와 뉴런 간의 연결 관계를 모델링한 것을, 신경망모델이라고 한다. 즉, 신경망은 뉴런들을 모방한 노드들을 레이어(Layer: 계층) 구조로 연결시킨, 시스템이다. 이러한 신경망모델은 레이어 수에 따라 '단층 신경망'과 '다층 신경망'으로 구분한다. 일반적인 다층신경망은 입력 레이어와 은닉 레이어, 출력 레이어로 구성된다. (1) 입력 레이어(input layer)은 외부의 자료들을 받아들이는 레이어로서, 입력 레이어의 뉴런 수는 입력되는 변수의 수와 동일하다. (2) 은닉 레이어(hidden layer)은 입력 레이어와 출력 레이어 사이에 위치하며 입력 레이어로부터 신호를 받아 특성을 추출하여 출력층으로 전달한다. (3) 출력 레이어(output layer)은 은닉 레이어로부터 신호를 받아 외부로 출력한다. 뉴런 간의 입력신호는 0에서 1 사이의 값을 갖는 각각의 연결강도와 곱해진 후 합산된다. 이 합이 뉴런의 임계치보다 크면 뉴런이 활성화되어 활성화 함수를 통하여 출력 값으로 구현된다. 한편, 보다 높은 인공 지능을 구현하기 위하여, 신경망의 은닉 레이어의 개수를 늘린 것을 심층 신경망(Deep Neural Network, DNN)이라고 한다. DNN은 다양한 구조로 개발되고 있다. 예를 들면, DNN의 일 예시인 합성곱 신경망(convolutional neural network, CNN)은 입력 값 (영상 또는 이미지)의 특징들을 추출하고, 추출된 출력 값의 패턴을 파악하기에 용이한 것으로 알려져 있다. CNN은 합성곱 연산, 활성화 함수 연산, 풀링(pooling) 연산 등이 특정 순서로 처리되는 형태로 구성될 수 있다. 예를 들면, DNN의 레이어 각각에서, 파라미터(i.e., 입력 값, 출력 값, 가중치 또는