KR20210070369A - 3d 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말 - Google Patents
3d 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말 Download PDFInfo
- Publication number
- KR20210070369A KR20210070369A KR1020217014106A KR20217014106A KR20210070369A KR 20210070369 A KR20210070369 A KR 20210070369A KR 1020217014106 A KR1020217014106 A KR 1020217014106A KR 20217014106 A KR20217014106 A KR 20217014106A KR 20210070369 A KR20210070369 A KR 20210070369A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- data
- sub
- image processing
- processing
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 99
- 238000000034 method Methods 0.000 title claims abstract description 49
- 239000000872 buffer Substances 0.000 claims abstract description 106
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 12
- 238000013528 artificial neural network Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000003139 buffering effect Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000007812 deficiency Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000012464 large buffer Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Computer Graphics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Architecture (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Image Input (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
본 발명에서는 3D 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말을 제공하는 바, 수직 슬라이딩 기술을 기반으로 3D 이미지에 대하여 수평 방향의 분할을 진행하여, 상기 3D 이미지를 적어도 두 개의 서브 이미지로 분할하며; 각 서브 이미지에 대하여, 상기 서브 이미지의 처리 데이터를 순환 버퍼 구역에 저장하며; 상기 서브 이미지를 처리한 후, 상기 순환 버퍼 구역에 다음 서브 이미지에 필요한 중복 부분 데이터를 보류하며; 이미지 처리 알고리즘의 다층 네트워크를 적어도 두 개의 세그먼트로 분할하여, 각 세그먼트 중 인접된 층 간의 데이터가 단지 버퍼를 통해서만 상호작용하고, DDR을 통하여 상호작용하지 않도록 하는 단계가 포함된다. 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말은 3D 수직 슬라이딩 기술과 순환 버퍼를 기반으로, 제한적인 버퍼 상황 하에서 3D 이미지 처리 중의 버퍼 이용율을 크게 향상시키고, 중복 부분에 대한 처리를 감소시켜, 전반적으로 이미지 처리 중의 대역폭 소모와 읽기/쓰기 지연 문제를 감소시켰다.
Description
본 발명은 버퍼 응용의 기술분야에 관한 것으로서, 특히 3D 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말에 관한 것이다.
디지털 이미지 처리(Digital Image Processing)는 컴퓨터를 통하여 이미지에 대하여 노이즈 제거, 증강, 복원, 분할, 특징 추출 등 처리를 진행하는 방법과 기술이다. 3D 이미지 처리 알고리즘에서 늘 다층으로 분할하여 층에 따라 처리를 진행한다. 각 층에는 입력 이미지와 출력 이미지가 존재한다. 그러므로 3D 이미지 처리의 구체적인 구현 과정에서, 거대한 저장 대역폭을 차지하여야 한다. 예를 들면, 신경망 Alex net에서, 724M MACs 계산량에 비하여, 3000M의 데이터 방문이 필요하다. 저장이 모두 오프 칩(off-chip) DRAM을 사용할 때, 거대한 대역폭은 높은 전력 소모와 높은 지연을 초래하고, 시스템 성능에 심각한 영향을 준다. 그러므로, 데이터의 읽기/쓰기는 3D 이미지 처리의 병목이 되었다.
종래 기술에서, 이중 데이터 전송속도(Double Data Rate, DDR) 메모리와 산술 논리 유닛(Arithmetic Logical Unit, ALU) 연산기 사이에 여러 단계의 로컬 스토리지를 증가하고, 최대한 버퍼링하고 또한 버퍼 중의 내용을 반복 이용하는 것은 효과적으로 DDR 대역폭을 감소시키는 방법이다. 예를 들면 DRAM과 ALU 사이의 글로벌 버퍼(global buffer)는 각 ALU 사이에 상호 방문할 수 있는 로컬 공유 스토리지를 증가하고, ALU 내부에 레지스터 파일(Register file)을 증가한다. buffer 레벨이 층에 따라 점차적으로 낮아짐에 따라, 각 레벨 저장 유닛이 단위 데이터를 처리하는 전력 소모와 방문 지연도 지수적으로 낮아진다. 아울러, 하드웨어도 왕왕 더 복잡하고, 면적도 이에 따라 증가한다.
그리고, 데이터의 비트 너비를 낮추는 것을 통하여 대역폭을 감소시킨다. 구체적으로 말하면, 저 비트를 사용하여 표시하는 데이터를 정량화시키는 것을 통하여 처리하고자 하는 데이터량을 감소시키고, 그 후 결과를 출력하여 역정량화를 진행한다. 해당 방법은 ALU가 더욱 간단해지도록 하지만, 데이터의 비트 너비가 낮아짐에 따라 필연코 계산 정밀도의 절감을 초래하게 된다. 신경망에 있어서, 역시 데이터에 대하여 재훈련을 진행하여야 한다.
이미지 처리 알고리즘의 이미지에 대한 처리는 일정한 순서에 따라 진행하는 것이다. 그러므로, 데이터 스트림에 대하여 분석과 제어를 진행하고, 합리적으로 buffer를 사용하여 버퍼링을 진행할 수 있다. 이미지를 더욱 작은 타일(tile)로 나누어 순차적으로 처리를 진행한다. 해당 방법은 메모리 읽기 간격을 감소시킨다. 버퍼는 tile을 단위로 하고, 버퍼 단위가 작아지면 더욱 작은 메모리 관리 유닛(Memory Management Unit, MMU) 또는 cache 버퍼 유닛을 사용할 수 있다. 하지만 인접된 tile 사이에는 중복 데이터가 존재한다. tile의 경계에 처한 점을 처리하여야 할 때, 반복적으로 인접된 tile의 데이터를 방문하여야 한다. tile 사이에 공동으로 처리하여야 하는 데이터를 overlap 데이터라 칭한다. tile을 버펄링한다면, overlap 데이터에 대해서도 버퍼링을 진행하여야 한다. 아울러, 한 층을 완성하기 전에 다음 층의 조작을 진행할 수 없고, 층 사이의 결과를 DDR에 놓으면 거대한 대역폭이 발생하고, 버퍼 중에 놓으면 또한 거대한 버퍼링 면적이 필요한다. 그러므로, 어떻게 버퍼의 이용율을 향상시킬 것인가 하는 것은 중요한 연구 기술 방향이다.
상기 종래 기술의 결함을 감안하여, 본 발명은 3D 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말을 제공하여, 3D 수직 슬라이딩(vertical sliding) 기술과 순환 버퍼(circular buffer)를 기반으로, 제한적인 버퍼 상황 하에서 3D 이미지 처리 중의 버퍼 이용율을 크게 향상시키고, 중복 부분에 대한 처리를 감소시켜, 전반적으로 이미지 처리 중의 대역폭 소모와 읽기/쓰기 지연 문제를 감소시킨다.
상기 목적 및 기타 관련 목적을 달성하기 위하여, 본 발명에서는 3D 이미지 처리 중의 데이터 읽기/쓰기 방법을 제공하는 바, 수직 슬라이딩 기술을 기반으로 3D 이미지에 대하여 수평 방향의 분할을 진행하여, 상기 3D 이미지를 적어도 두 개의 서브 이미지로 분할하며; 각 서브 이미지에 대하여, 상기 서브 이미지의 처리 데이터를 순환 버퍼 구역에 저장하며; 상기 서브 이미지를 처리한 후, 상기 순환 버퍼 구역에 다음 서브 이미지에 필요한 중복 부분 데이터를 보류하는 단계; 이미지 처리 알고리즘의 다층 네트워크를 적어도 두 개의 세그먼트로 분할하여, 각 세그먼트 중 인접된 층 간의 데이터가 단지 버퍼를 통해서만 상호작용하고, DDR을 통하여 상호작용하지 않도록 하는 단계가 포함된다.
본 발명의 일 실시예에서, 각 서브 이미지가 차지하는 순환 버퍼 구역의 크기는 SubImageXsize*(SubImageYsize+OverlapSize)*SubImageZSize이며, 그 중에서, SubImageXsize, SubImageYsize, SubImageZSize와 OverlapSize는 각각 서브 이미지의 X 방향 크기, Y 방향 크기, Z 방향 크기와 중복 부분 크기이다.
본 발명의 일 실시예에서, 각 세그먼트에서, 마지막 한 층을 제외한 각 층의 출력 데이터를 버퍼에 쓰고, 제1층을 제외한 각 층이 모두 상기 버퍼로부터 데이터를 읽는다.
본 발명의 일 실시예에서, 신경망의 3D 이미지 처리에 적용된다.
대응되게, 본 발명에서는 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템을 제공하는 바, 순환 버퍼 모듈과 세그먼트 버퍼 모듈이 포함되며;
상기 순환 버퍼 모듈은 수직 슬라이딩 기술을 기반으로 3D 이미지에 대하여 수평 방향의 분할을 진행하여, 상기 3D 이미지를 적어도 두 개의 서브 이미지로 분할하며; 각 서브 이미지에 대하여, 상기 서브 이미지의 처리 데이터를 순환 버퍼 구역에 저장하며; 상기 서브 이미지를 처리한 후, 상기 순환 버퍼 구역에 다음 서브 이미지에 필요한 중복 부분 데이터를 보류하며;
상기 세그먼트 버퍼 모듈은 이미지 처리 알고리즘의 다층 네트워크를 적어도 두 개의 세그먼트로 분할하여, 각 세그먼트 중 인접된 층 간의 데이터가 단지 버퍼를 통해서만 상호작용하고, DDR을 통하여 상호작용하지 않도록 한다.
본 발명의 일 실시예에서, 각 서브 이미지가 차지하는 순환 버퍼 구역의 크기는 SubImageXsize*(SubImageYsize+OverlapSize)*SubImageZSize이며, 그 중에서, SubImageXsize, SubImageYsize, SubImageZSize와 OverlapSize는 각각 서브 이미지의 X 방향 크기, Y 방향 크기, Z 방향 크기와 중복 부분 크기이다.
본 발명의 일 실시예에서, 각 세그먼트에서, 마지막 한 층을 제외한 각 층의 출력 데이터를 버퍼에 쓰고, 제1층을 제외한 각 층이 모두 상기 버퍼로부터 데이터를 읽는다.
본 발명의 일 실시예에서, 신경망의 3D 이미지 처리에 적용된다.
본 발명에서는 컴퓨터 프로그램을 저장하는 저장 매체를 제공하는 바, 해당 프로그램이 프로세서에 의하여 실행될 때 상기 3D 이미지 처리 중의 데이터 읽기/쓰기 방법을 구현하도록 한다.
본 발명에서는 단말을 제공하는 바, 프로세서 및 기억장치가 포함되며;
상기 기억장치는 컴퓨터 프로그램을 저장하며;
상기 프로세서는 상기 기억장치에 저장된 컴퓨터 프로그램을 실행하여, 상기 단말이 상기 3D 이미지 처리 중의 데이터 읽기/쓰기 방법을 구현하도록 한다.
상술한 바와 같이, 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말은 하기 유익한 효과를 갖는다.
(1) 3D 수직 슬라이딩 기술과 순환 버퍼를 기반으로 중복 부분에 대한 처리를 감소하고, 제한적인 버퍼 상황 하에서 3D 이미지 처리 중의 버퍼 이용율을 크게 향상시키며;
(2) 전반적인 네트워크에 대하여 분석을 진행하는 것을 통하여, 제한적인 버퍼 상황 하에서, 층 간의 결과가 더는 반드시 DDR을 사용하여 상호작용하지 않도록 하여, DDR에 대한 방문을 감소시키고, 이미지 처리 알고리즘의 대역폭에 대한 수요를 낮추며, 읽기/쓰기 지연과 전력 소모를 낮추며;
(3) 하드웨어 설계에서, 더욱 작은 버퍼(buffer) 면적을 사용할 수 있다.
도1은 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법의 일 실시예 중의 흐름도이다.
도2는 이미지 처리 알고리즘의 데이터 구조 도면이다.
도3(a)은 일 실시예 중의 3D 이미지가 서브 이미지로 수직 슬라이딩되는 도면이다.
도3(b)은 다른 일 실시예 중의 3D 이미지가 서브 이미지로 수직 슬라이딩되는 도면이다.
도4는 일 실시예 중의 서브 이미지 대응 관계 도면이다.
도5는 일 실시예 중의 3D 이미지의 순환 버퍼 구역의 도면이다.
도6은 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템의 일 실시예 중의 구조도이다.
도7은 본 발명의 단말의 일 실시예 중의 구조도이다.
도2는 이미지 처리 알고리즘의 데이터 구조 도면이다.
도3(a)은 일 실시예 중의 3D 이미지가 서브 이미지로 수직 슬라이딩되는 도면이다.
도3(b)은 다른 일 실시예 중의 3D 이미지가 서브 이미지로 수직 슬라이딩되는 도면이다.
도4는 일 실시예 중의 서브 이미지 대응 관계 도면이다.
도5는 일 실시예 중의 3D 이미지의 순환 버퍼 구역의 도면이다.
도6은 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템의 일 실시예 중의 구조도이다.
도7은 본 발명의 단말의 일 실시예 중의 구조도이다.
이하는 특정된 구체적인 실시예를 통하여 본 발명의 실시방식에 대하여 설명하도록 하는 바, 당업계 통상의 지식을 가진 자들은 본 명세서에 기재된 내용에 의하여 용이하게 본 발명의 기타 장점과 효과를 이해할 수 있을 것이다. 본 발명은 또 기타 부동한 구체적인 실시예를 통하여 실시 또는 응용될 수 있으며, 본 명세서 중의 각 세부사항도 부동한 관점과 응용을 기반으로 본 발명의 사상을 벗어나지 않는 상황 하에서 여러 가지 수정과 변경을 진행할 수 있다. 설명하여야 할 바로는, 충돌되지 않는 상황 하에서, 하기 실시예 및 실시예 중의 특징은 상호 결합될 수 있다.
주목하여야 할 바로는, 하기 실시예에서 제공하는 도면은 단지 예시적으로 본 발명의 기본사상을 설명하므로, 도면 중에서는 단지 본 발명과 관련된 구성요소만 표시하고 실지로 구현할 때의 구성요소의 수량, 형상 및 크기에 의하여 도시되는 것이 아니며, 실제로 구현함에 있어서 각 구성요소의 형태, 수량 및 비례는 임의로 변화될 수 있고 또한 구성요소의 구조 및 형태도 더욱 복잡할 수 있다.
본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말은 3D 수직 슬라이딩 기술과 순환 버퍼를 기반으로, 제한적인 버퍼 상황 하에서 3D 이미지 처리 중의 버퍼 이용율을 크게 향상시키고, 중복 부분에 대한 처리와 DDR에 대한 방문을 감소시켜, 전반적으로 이미지 처리 중의 대역폭 소모와 읽기/쓰기 지연 문제를 감소시키고, 3D 이미지 처리의 속도를 크게 향상시켰다.
도1에 도시된 바와 같이, 일 실시예에서, 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법에 있어서,
S1 단계: 수직 슬라이딩 기술을 기반으로 3D 이미지에 대하여 수평 방향의 분할을 진행하여, 상기 3D 이미지를 적어도 두 개의 서브 이미지로 분할하며; 각 서브 이미지에 대하여, 상기 서브 이미지의 처리 데이터를 순환 버퍼 구역에 저장하며; 상기 서브 이미지를 처리한 후, 상기 순환 버퍼 구역에 다음 서브 이미지에 필요한 중복 부분 데이터를 보류한다.
구체적으로 말하면, 3D 이미지에 대하여 분할을 진행할 때, 일정한 3D의 사각형 블럭 크기에 따라 수직 방향에서 위로부터 아래로 순차적으로 슬라이딩을 진행하는 바, 해당 기술을 수직 슬라이딩 기술이라 칭한다. 수직 슬라이딩 기술은 오리지널의 3D 이미지를 상하 여러 층으로 분할하고, 각 층에 포함되는 데이터가 중복되지 않는다. 분할 과정에서 3D 슬라이딩 사각형 블럭의 크기는 고정적이다. 제1층 또는 마지막 층은 3D 이미지의 실제 크기와 3D 슬라이딩 사각형 블럭의 크기에 의하여 조절한다. 도3(a)에 도시된 바와 같이, 해당 예는 3D 이미지를 4개 서브 이미지로 분할하고, 각각 subImage0, subImage1, subImage2, subImage3으로 표기한다.
도2에 도시된 바와 같이, ALU는 버스를 통하여 DDR을 방문하고, 직접 SRAM 버퍼를 방문할 수 있다. 제1회 요청은 DDR로부터 데이터를 요청하고, 버퍼링하여야 하는 데이터를 SRAM에 버퍼링한다. ALU가 재차 데이터를 요청할 때, 만일 데이터가 버퍼 SRAM에 위치하면, 직접 버퍼 SRAM으로부터 읽는다.
tile 간의 overlap의 반복 처리를 감소시키기 위하여, 본 발명에서, Vertical sliding 기술을 사용하여 3D 이미지를 수평 방향으로 분할하고, 각 분할 블럭을 서브 이미지(sub image)라 칭한다. 바람직하게는, 최대한 각 sub image가 납작하고 길도록 한다. 각 sub image의 너비가 오리지널 image의 너비와 같다고 가정하면, 사용가능한 SRAM의 크기에 의하여 최대 sub image의 높이를 계산할 수 있다. 도3(a)은 하나의 전형적인 분할이다. Sub image의 X와 Z 방향 깊이가 오리지널 image와 같지만, Y 방향 높이가 감소되었다. 만일 산출된 sub image 값이 음수 또는 0이라면, 3D 이미지를 좌우로 갈라야 한다. 도3(b)에 표시된 것은 좌우로 갈라진 분할을 표시하는 바, 오리지널 3D 이미지를 3x4개 3D sub images로 분할하였다.
구체적으로 말하면, 본 발명은 sub image의 처리 과정에 circular buffer를 도입하였다. 하나의 sub image를 처리 완료한 후, 계속하여 해당 sub image 아래의 sub image를 처리할 때, 잠시 지난 sub image overlap 행의 버퍼를 말소하지 않는 것을 통하여 DDR이 중복 데이터를 읽는 것을 감소시킨다. 그 중에서, 매 회 수행 시, circular buffer에서 커버되는 데이터는 이전 sub image가 이미 소모하고 향후 더는 사용하지 않는 데이터이며, 이로써 공간을 절약할 뿐 아니라 또한 overlap의 반복 읽기/쓰기를 감소시킨다. 이미지 합성곱 조작에서, overlap의 크기는 합성곱 커널(kernel)과 높은 관련이 있다. 그 중에서 수직 분할 방향 상의 sub image가 circular buffer를 공용하며; 수평 방향 상의 인접된 sub image는 overlap을 처리하여 데이터를 이용하여야 한다. 구체적으로 말하면, 각 슬라이딩 윈도우의 높이를 N, 합성곱 높이를 M이라고 가정하면, 제2층의 제1행은 제1층의 M-1행을 멀티플렉싱하여야 한다. circular buffer에서, 제1층을 처리 완료하고 이어 해당 층 아래의 한 층을 처리할 때, 제1층의 꼬리로부터 시작하여 제2층으로 내려가고, circular buffer의 바닥과 부딪친 후 circular buffer 헤드로 리턴한다. 제1층은 커버된 마침 제2층의 제1행이 필요로 하는 제1층에 속하는 마지막 몇 행이기 때문에, 버퍼를 절약하고 버퍼 이용율을 향상시킨다.
sub image 분할에서, 서로 다른 층 간의 sub image는 대응 관계가 존재한다. 도4에 도시된 바와 같이, 두 층에는 모두 세 sub image 분할이 존재한다. 설명하여야 할 바로는, 간략화를 위하여 Z 방향의 표시를 생략하였다. SubImage00과 SubImage20의 높이를 2, 기타 sub image의 높이를 4라고 가정한다. 합성곱 조작을 진행할 때, 2차 합성곱 커널이 3x3이라고 설정하면, SubImage00과 SubImage10은 SubImage10의 입력에 대응되고, SubImage10은 SubImage20의 입력이며, 기타 의존 관계는 유추할 수 있다. 구체적으로 말하면, SubImage11을 입력으로 할 때 SubImage10의 내용을 사용하여야 하고, 필요한 행은 overlap의 행이다. circular buffer 기술을 이용하여, SRAM에서 단지 overlap의 행과 새로 생성된 결과만 저장하면 되고, 더는 전체 오리지널 3D 이미지 출력을 저장할 필요가 없다.
circular buffer의 구현은 전체 3D 이미지를 하나의 순환 단위로 한다. 각 Z 평면에는 overlap 행의 공간을 사전 보류한다. 하나의 3D 이미지가 Z 방향 상에 두 개의 평면이 있다고 가정하며, Z0과 Z1로 표기한다. Y 방향에 8행이 있고, R0 내지 R7로 표기한다. 3D 이미지를 상하로 두 개의 sub image로 분할하고, subImage0과 subImage1로 칭하며, subImage0에는 R0 내지 R3이 포함되고, subImage1에는 R4 내지 R7이 포함된다. 합성곱 커널의 크기가 3x3x2이고, sub image 간의 overlap이 두 행이라고 가정한다. Circular buffer의 크기가 SubImageXsize*(SubImageYsize+OverlapSize)*SubImageZSize이다. 그 중에서, SubImageXsize, SubImageYsize, SubImageZSize와 OverlapSize는 각각 서브 이미지의 X 방향 크기, Y 방향 크기, Z 방향 크기와 중복 부분 크기이다.
도5에 도시된 바와 같이, subImage0을 버퍼링할 때, circular buffer에 사전 보류된 overlap 공간을 유치하고, 해당 실시예에서는 두 행이며, “empty(엠프티)”로 표시한다. SubImage0은 버퍼링된 후 다음 층 네트워크에 의해 소모된다. 다음 번 subImage1을 버퍼링할 때, subImage1의 각 Z 평면은 subImage0의 각 Z 평면에 대응되는 empty로부터 시작하거나, 각 Z 평면에 대응되는 마지막 위치로부터 시작하여 순차적으로 저장하고, 커버되는 부분은 마침 SubImage0의 이미 소모된 부분이다. 어느 Z 평면이 circular 꼬리에 부딪치면, 버퍼링된 헤드를 덮어쓴다. 각 Z 평면의 커버되지 않은 행은 마침 overlap이 필요로 하는 행이다.
설명하여야 할 바로는, 동일한 3D 이미지에서 분할된 복수개 sub image의 높이가 완전히 같은 것은 아니다. 매 회 하나의 sub image를 처리할 때 3D sub image의 시작 주소, 너비, 높이, 스트라이드(stride)와 출력 주소 정보를 알아야 한다. sub image를 분할한 후, 이러한 파라미터를 정확하게 구성하여야 한다.
S2 단계: 이미지 처리 알고리즘의 다층 네트워크를 적어도 두 개의 세그먼트로 분할하여, 각 세그먼트 중 인접된 층 간의 데이터가 단지 버퍼를 통해서만 상호작용(Interactive)하고, DDR을 통하여 상호작용하지 않도록 한다.
구체적으로 말하면, 이미지 처리 모델에는 왕왕 여러 층이 포함되고, 각 층이 상응한 임무를 완성하여, 인접된 층 간에 데이터 의존 관계가 존재한다. 그러므로, 만일 인접된 두 층 간에 DDR을 사용하여 데이터 상호작용을 완성한다면, 비교적 큰 DDR 대역폭과 지연이 존재한다. 만일 중간 결과를 모두 Buffer에 버퍼링한다면, 아주 큰 버퍼를 차지하게 된다. sub image로 분할한 후, 층간 중간 결과는 sub image를 버퍼링 단위로 하고, 전체 층 전부 중간 결과에 대하여 버퍼링을 진행할 필요가 없다. 그러므로, 본 발명은 버퍼(buffer)의 크기에 의하여 얼마나 많은 층을 버퍼를 이용하여 상호작용을 진행할 수 있는지 판단한다. 이러한 층의 특징은 제1층이 DDR로부터 데이터를 읽고, 출력을 buffer에 버퍼링하고, 마지막 한 층의 데이터가 DDR로 다시 씌어 질 때까지 중간층은 buffer로부터 읽고 또한 버퍼에 쓴다. 상기 조건을 만족시키는 층이 세그먼트(segment)가 된다. 다시 말하면, 세그먼트에서 마지막 한 층을 제외한 각 층의 결과를 SRAM 버퍼에 쓰고, 제1 층을 제외한 층이 모두 SRAM으로부터 데이터를 읽는다.
분할된 sub image가 작을 수록 circular buffer가 차지하는 SRAM이 작고, 또한 sub image 간 overlap 부분이 차지한 비례가 크고, 유효 데이터 차지율이 작아진다는 것을 뜻한다. 그러므로, 데이터가 DDR를 통하여 버퍼링하는지 아니면 SRAM을 통하여 버퍼링하는지는 서로 다른 원가가 존재한다. 서로 다른 세그먼트 분할이 서로 다른 성능 원가와 SRAM 이용율을 갖기 때문에, 성능 최적해를 찾아야 한다. 아울러, 층의 분할은 sub image의 분할과 연관된다.
바람직하게는, 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법이 신경망의 3D 이미지 처리에 적용되는 것이다.
도6에 도시된 바와 같이, 일 실시예에서, 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템에는 순환 버퍼 모듈(61)과 세그먼트 버퍼 모듈(62)이 포함된다.
상기 순환 버퍼 모듈(61)이 수직 슬라이딩 기술을 기반으로 3D 이미지에 대하여 수평 방향의 분할을 진행하여, 상기 3D 이미지를 적어도 두 개의 서브 이미지로 분할하며; 각 서브 이미지에 대하여, 상기 서브 이미지의 처리 데이터를 순환 버퍼 구역에 저장하며; 상기 서브 이미지를 처리한 후, 상기 순환 버퍼 구역에 다음 서브 이미지에 필요한 중복 부분 데이터를 보류한다.
상기 세그먼트 버퍼 모듈(62)이 이미지 처리 알고리즘의 다층 네트워크를 적어도 두 개의 세그먼트로 분할하여, 각 세그먼트 중 인접된 층 간의 데이터가 단지 버퍼를 통해서만 상호작용하고, DDR을 통하여 상호작용하지 않도록 한다.
설명하여야 할 바로는, 상기 순환 버퍼 모듈(61)과 세그먼트 버퍼 모듈(62)의 구조 및 원리는 상기 3D 이미지 처리 중의 데이터 읽기/쓰기 방법의 단계와 일일이 대응되기 때문에, 여기에서는 상세한 설명을 생략한다.
설명하여야 할 바로는, 상기 장치의 각 모듈의 분할은 단지 논리 기능의 분할이고, 실제적으로 구현 시 전부 또는 일부는 하나의 물리 실체 상에 집적될 수 있고, 물리적으로 분리될 수도 있는 것을 이해할 것이다. 또한 이러한 모듈은 소프트웨어로 장치 호출을 처리하는 형식으로 구현될 수도 있고, 또한 전부 하드웨어 형식으로 구현될 수도 있으며, 또한 일부 모듈은 소프트웨어로 장치 호출을 처리하는 형식으로 구현하고, 일부 모듈은 하드웨어 형식으로 구현될 수도 있다. 예를 들면, x 모듈은 단독으로 구성된 처리 부품일 수 있고, 또한 상기 장치 중의 어느 한 칩에 집적되어 구현될 수도 있다. 그리고, x 모듈은 또한 프로그램 코드의 형식으로 상기 장치의 기억장치에 저장되어, 상기 장치의 어느 한 처리 부품이 상기 x 모듈의 기능을 호출 및 실행할 수 있다. 기타 모듈의 구현도 이와 유사하다. 이러한 모듈은 전부 또는 일부 한데 집적될 수 있고, 또한 독립적으로 구현될 수도 있다. 여기에서 상기 처리 부품은 집적회로일 수 있고, 신호의 처리 능력을 갖는다. 구현 과정에서, 상기 방법의 각 단계 또는 상기 각 모듈은 프로세서 부품 중의 하드웨어의 집적 논리회로 또는 소프트웨어 형식의 명령을 통하여 완성될 수 있다. 상기 이러한 모듈은 상기 방법을 실시하는 하나 또는 복수개의 집적 회로로 구성될 수 있는 바, 예를 들면, 하나 또는 복수개 특정 응용 주문형 집적 회로(Application Specific Integrated Circuit, ASIC), 하나 또는 복수개 디지털 신호 처리기(Digital Signal Processor, DSP), 하나 또는 복수개 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array, FPGA) 등이다. 상기 어느 한 모듈이 처리 부품이 프로그램 코드를 호출하는 형식으로 구현될 때, 해당 처리 부품은 범용 프로세서 예를 들면 중앙처리장치(Central Processing Unit, CPU) 또는 기타 프로그램 코드를 호출할 수 있는 기타 프로세서일 수 있다. 이러한 모듈은 한데 집적되어 단일 칩 시스템(System-on-a-chip, SOC)의 형식으로 구현될 수 있다.
본 발명의 저장 매체에는 프로그램을 저장하고, 해당 프로그램이 프로세서에 의하여 실행될 때 상기 3D 이미지 처리 중의 데이터 읽기/쓰기 방법을 구현하도록 한다.
바람직하게는, 상기 저장 매체에는 ROM, RAM, 자기 디스크, USB, 메모리 카드 또는 광 디스크 등 여러 가지 프로그램 코드를 저장할 수 있는 매체가 포함될 수 있다.
도7에 도시된 바와 같이, 일 실시예에서, 본 발명의 단말에는 프로세서(71) 및 기억장치(72)가 포함된다.
상기 기억장치(72)는 컴퓨터 판독 가능 프로그램을 저장한다.
상기 기억장치(72)에는 ROM, RAM, 자기 디스크, USB, 메모리 카드 또는 광 디스크 등 여러 가지 프로그램 코드를 저장할 수 있는 매체가 포함될 수 있다.
상기 프로세서(71)는 상기 기억장치(72)와 상호 연결되고, 상기 기억장치(72)에 저장된 컴퓨터 프로그램을 실행하여, 상기 단말이 상기 3D 이미지 처리 중의 데이터 읽기/쓰기 방법을 구현하도록 한다.
바람직하게는, 상기 프로세서(71)는 범용 프로세서일 수 있고, 중앙처리장치(CentralProcessingUnit, CPU), 네트워크 프로세서(NetworkProcessor, NP) 등이 포함되며; 또한 디지털 신호 처리기(Digital Signal Processor, DSP), 응용 주문형 집적 회로(Application Specific Integrated Circuit, ASIC), 필드 프로그래머블 게이트 어레이(Field-Programmable Gate Array, FPGA) 또는 기타 프로그램가능 논리 소자, 개별 게이트 또는 트랜지스터 논리 소자, 개별 하드웨어 모듈일 수 있다.
요약하면, 본 발명의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말은 3D 수직 슬라이딩 기술과 순환 버퍼를 기반으로, 제한적인 버퍼 상황 하에서 3D 이미지 처리 중의 버퍼 이용율을 크게 향상시키고, 중복 부분에 대한 처리를 감소시키며; 전반적인 네트워크에 대하여 분석을 진행하는 것을 통하여, 제한적인 버퍼 상황 하에서, 층 간의 결과가 더는 반드시 DDR을 사용하여 상호작용하지 않도록 하여, DDR에 대한 방문을 감소시키고, 이미지 처리 알고리즘의 대역폭에 대한 수요를 낮추며, 읽기/쓰기 지연과 전력 소모를 낮추며; 하드웨어 설계에서, 더욱 작은 buffer 면적을 사용할 수 있다. 그러므로, 본 발명은 종래 기술의 여러 가지 결함을 극복하고 높은 산업상 이용성을 구비하고 있다.
이상에서는 본 발명을 특정의 실시예에 대해서 도시하고 설명하였지만, 본 발명은 상술한 실시예만 한정되는 것은 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 청구범위에 기재된 본 발명의 기술적 사상의 요지를 벗어나지 않는 범위에서 얼마든지 다양하게 변경하여 실시할 수 있을 것이다. 그러므로, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상의 요지를 벗어나지 않는 범위에서 진행한 수정과 변경은 본 발명의 청구범위에 속한다 하여야 할 것이다.
61
순환 버퍼 모듈
62 세그먼트 버퍼 모듈
71 프로세서
72 기억장치
62 세그먼트 버퍼 모듈
71 프로세서
72 기억장치
Claims (10)
- 3D 이미지 처리 중의 데이터 읽기/쓰기 방법에 있어서,
수직 슬라이딩 기술을 기반으로 3D 이미지에 대하여 수평 방향의 분할을 진행하여, 상기 3D 이미지를 적어도 두 개의 서브 이미지로 분할하며; 각 서브 이미지에 대하여, 상기 서브 이미지의 처리 데이터를 순환 버퍼 구역에 저장하며; 상기 서브 이미지를 처리한 후, 상기 순환 버퍼 구역에 다음 서브 이미지에 필요한 중복 부분 데이터를 보류하는 단계;
이미지 처리 알고리즘의 다층 네트워크를 적어도 두 개의 세그먼트로 분할하여, 각 세그먼트 중 인접된 층 간의 데이터가 단지 버퍼를 통해서만 상호작용하고, DDR을 통하여 상호작용하지 않도록 하는 단계가 포함되는 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 방법. - 제1항에 있어서,
각 서브 이미지가 차지하는 순환 버퍼 구역의 크기는 SubImageXsize*(SubImageYsize+OverlapSize)*SubImageZSize이며, 그 중에서, SubImageXsize, SubImageYsize, SubImageZSize와 OverlapSize는 각각 서브 이미지의 X 방향 크기, Y 방향 크기, Z 방향 크기와 중복 부분 크기인 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 방법. - 제1항에 있어서,
각 세그먼트에서, 마지막 한 층을 제외한 각 층의 출력 데이터를 버퍼에 쓰고, 제1층을 제외한 각 층이 모두 상기 버퍼로부터 데이터를 읽는 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 방법. - 제1항에 있어서,
신경망의 3D 이미지 처리에 적용되는 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 방법. - 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템에 있어서,
순환 버퍼 모듈과 세그먼트 버퍼 모듈이 포함되며;
상기 순환 버퍼 모듈은 수직 슬라이딩 기술을 기반으로 3D 이미지에 대하여 수평 방향의 분할을 진행하여, 상기 3D 이미지를 적어도 두 개의 서브 이미지로 분할하며; 각 서브 이미지에 대하여, 상기 서브 이미지의 처리 데이터를 순환 버퍼 구역에 저장하며; 상기 서브 이미지를 처리한 후, 상기 순환 버퍼 구역에 다음 서브 이미지에 필요한 중복 부분 데이터를 보류하며;
상기 세그먼트 버퍼 모듈은 이미지 처리 알고리즘의 다층 네트워크를 적어도 두 개의 세그먼트로 분할하여, 각 세그먼트 중 인접된 층 간의 데이터가 단지 버퍼를 통해서만 상호작용하고, DDR을 통하여 상호작용하지 않도록 하는 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템. - 제5항에 있어서,
각 서브 이미지가 차지하는 순환 버퍼 구역의 크기는 SubImageXsize*(SubImageYsize+OverlapSize)*SubImageZSize이며, 그 중에서, SubImageXsize, SubImageYsize, SubImageZSize와 OverlapSize는 각각 서브 이미지의 X 방향 크기, Y 방향 크기, Z 방향 크기와 중복 부분 크기인 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템. - 제5항에 있어서,
각 세그먼트에서, 마지막 한 층을 제외한 각 층의 출력 데이터를 버퍼에 쓰고, 제1층을 제외한 각 층이 모두 상기 버퍼로부터 데이터를 읽는 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템. - 제5항에 있어서,
신경망의 3D 이미지 처리에 적용되는 것을 특징으로 하는 3D 이미지 처리 중의 데이터 읽기/쓰기 시스템. - 컴퓨터 프로그램을 저장하는 저장 매체에 있어서,
해당 프로그램이 프로세서에 의하여 실행될 때 상기 제1항 내지 제4항의 어느 한 항의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법을 구현하도록 하는 것을 특징으로 하는 저장 매체. - 단말에 있어서,
프로세서와 기억장치가 포함되며,
상기 기억장치는 컴퓨터 프로그램을 저장하며;
상기 프로세서는 상기 기억장치에 저장된 컴퓨터 프로그램을 실행하여, 상기 단말이 상기 제1항 내지 제4항의 어느 한 항의 3D 이미지 처리 중의 데이터 읽기/쓰기 방법을 구현하도록 하는 것을 특징으로 하는 단말.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811179323.6A CN111028360B (zh) | 2018-10-10 | 2018-10-10 | 一种3d图像处理中数据读写方法及系统、存储介质及终端 |
CN201811179323.6 | 2018-10-10 | ||
PCT/CN2019/107678 WO2020073801A1 (zh) | 2018-10-10 | 2019-09-25 | 一种3d图像处理中数据读写方法及系统、存储介质及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210070369A true KR20210070369A (ko) | 2021-06-14 |
Family
ID=70164275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217014106A KR20210070369A (ko) | 2018-10-10 | 2019-09-25 | 3d 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11455781B2 (ko) |
EP (1) | EP3816867A4 (ko) |
JP (1) | JP7201802B2 (ko) |
KR (1) | KR20210070369A (ko) |
CN (1) | CN111028360B (ko) |
WO (1) | WO2020073801A1 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117036149A (zh) * | 2020-12-01 | 2023-11-10 | 华为技术有限公司 | 一种图像处理方法及芯片 |
CN112541929A (zh) * | 2021-01-25 | 2021-03-23 | 翱捷科技股份有限公司 | 一种用于卷积神经网络的图像处理方法及系统 |
WO2023033759A1 (en) * | 2021-09-03 | 2023-03-09 | Aselsan Elektroni̇k Sanayi̇ Ve Ti̇caret Anoni̇m Şi̇rketi̇ | A method to accelerate deep learning applications for embedded environments |
CN115035128B (zh) * | 2022-08-10 | 2022-11-08 | 之江实验室 | 基于fpga的图像重叠滑窗分割方法及系统 |
US11972504B2 (en) | 2022-08-10 | 2024-04-30 | Zhejiang Lab | Method and system for overlapping sliding window segmentation of image based on FPGA |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1994500A1 (en) * | 2006-03-06 | 2008-11-26 | Nxp B.V. | Addressing on chip memory for block operations |
CN101080009B (zh) * | 2007-07-17 | 2011-02-23 | 智原科技股份有限公司 | 运用于图像编解码器中的去方块过滤方法与装置 |
CN101859280B (zh) * | 2010-06-03 | 2012-04-04 | 杭州海康威视软件有限公司 | 一种二维图像数据的并行传输计算方法及系统 |
CN104281543B (zh) * | 2013-07-01 | 2017-12-26 | 图芯芯片技术(上海)有限公司 | 同时支持显示控制器和图形加速器访问内存的架构方法 |
US20150228106A1 (en) | 2014-02-13 | 2015-08-13 | Vixs Systems Inc. | Low latency video texture mapping via tight integration of codec engine with 3d graphics engine |
US10944911B2 (en) * | 2014-10-24 | 2021-03-09 | Texas Instruments Incorporated | Image data processing for digital overlap wide dynamic range sensors |
JP6766557B2 (ja) * | 2016-09-29 | 2020-10-14 | アイシン精機株式会社 | 周辺監視装置 |
JP6936592B2 (ja) * | 2017-03-03 | 2021-09-15 | キヤノン株式会社 | 演算処理装置およびその制御方法 |
CN108629734B (zh) * | 2017-03-23 | 2021-10-22 | 展讯通信(上海)有限公司 | 图像几何变换方法、装置及终端 |
CN107679621B (zh) * | 2017-04-19 | 2020-12-08 | 赛灵思公司 | 人工神经网络处理装置 |
US11373266B2 (en) * | 2017-05-05 | 2022-06-28 | Intel Corporation | Data parallelism and halo exchange for distributed machine learning |
CN107454364B (zh) * | 2017-06-16 | 2020-04-24 | 国电南瑞科技股份有限公司 | 一种视频监控领域的分布式实时图像采集与处理系统 |
US20190057060A1 (en) * | 2017-08-19 | 2019-02-21 | Wave Computing, Inc. | Reconfigurable fabric data routing |
WO2019104638A1 (zh) * | 2017-11-30 | 2019-06-06 | 深圳市大疆创新科技有限公司 | 神经网络处理的方法、装置、加速器、系统和可移动设备 |
-
2018
- 2018-10-10 CN CN201811179323.6A patent/CN111028360B/zh active Active
-
2019
- 2019-09-25 US US17/257,859 patent/US11455781B2/en active Active
- 2019-09-25 WO PCT/CN2019/107678 patent/WO2020073801A1/zh active Application Filing
- 2019-09-25 EP EP19871524.5A patent/EP3816867A4/en active Pending
- 2019-09-25 JP JP2021520315A patent/JP7201802B2/ja active Active
- 2019-09-25 KR KR1020217014106A patent/KR20210070369A/ko not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
JP7201802B2 (ja) | 2023-01-10 |
EP3816867A1 (en) | 2021-05-05 |
US11455781B2 (en) | 2022-09-27 |
WO2020073801A1 (zh) | 2020-04-16 |
CN111028360B (zh) | 2022-06-14 |
EP3816867A4 (en) | 2021-09-15 |
JP2022508028A (ja) | 2022-01-19 |
US20210295607A1 (en) | 2021-09-23 |
CN111028360A (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20210070369A (ko) | 3d 이미지 처리 중의 데이터 읽기/쓰기 방법 및 시스템, 저장 매체 및 단말 | |
US20210192246A1 (en) | Convolutional neural network-based image processing method and device, and unmanned aerial vehicle | |
JP5461533B2 (ja) | ローカル及びグローバルのデータ共有 | |
US11748599B2 (en) | Super-tiling in neural network processing to enable analytics at lower memory speed | |
US11042486B2 (en) | Virtual memory management | |
JP6335335B2 (ja) | タイルベースのレンダリングgpuアーキテクチャのための任意のタイル形状を有する適応可能なパーティションメカニズム | |
Kasagi et al. | Parallel algorithms for the summed area table on the asynchronous hierarchical memory machine, with GPU implementations | |
CN105550978B (zh) | 一种面向统一染色架构的gpu 3d引擎片上存储层次结构 | |
WO2019223383A1 (zh) | 直接内存存取方法、装置、专用计算芯片及异构计算系统 | |
KR20200075769A (ko) | 텐서 데이터를 액세스하는 방법 및 장치 | |
US11775809B2 (en) | Image processing apparatus, imaging apparatus, image processing method, non-transitory computer-readable storage medium | |
JP7410961B2 (ja) | 演算処理装置 | |
US11430164B2 (en) | Tile-based scheduling | |
CN111914988A (zh) | 神经网络设备、计算系统和处理特征图的方法 | |
US9183435B2 (en) | Feature generalization using topological model | |
Wu et al. | Hetero layer fusion based architecture design and implementation for of deep learning accelerator | |
CN109816093B (zh) | 一种单路式卷积实现方法 | |
US20160140034A1 (en) | Devices and methods for linked list array hardware implementation | |
RU168781U1 (ru) | Устройство обработки стереоизображений | |
US11500632B2 (en) | Processor device for executing SIMD instructions | |
CN113325999B (zh) | 用于处理非结构化源数据的方法和系统 | |
US20240231826A1 (en) | Performing an operation on an array of values at a processing unit | |
US10866907B2 (en) | Eviction prioritization for image processing | |
US20140095792A1 (en) | Cache control device and pipeline control method | |
CN117151191A (zh) | 硬件加速器、处理器、芯片、及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal |