KR100894136B1 - An image detection equipment and the method which applied the KD-tree search algorithm of the non-stack type for ray tracing - Google Patents
An image detection equipment and the method which applied the KD-tree search algorithm of the non-stack type for ray tracing Download PDFInfo
- Publication number
- KR100894136B1 KR100894136B1 KR1020060083354A KR20060083354A KR100894136B1 KR 100894136 B1 KR100894136 B1 KR 100894136B1 KR 1020060083354 A KR1020060083354 A KR 1020060083354A KR 20060083354 A KR20060083354 A KR 20060083354A KR 100894136 B1 KR100894136 B1 KR 100894136B1
- Authority
- KR
- South Korea
- Prior art keywords
- node
- tree
- search
- ray
- image
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/7847—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content
- G06F16/785—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content using colour or luminescence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/40—Tree coding, e.g. quadtree, octree
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Library & Information Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
본 발명은 그래픽 처리 장치(GPU : Graphics Processing Unit)에서 동작되는 레이 트레이싱(Ray-Tracing)을 위한 논스택(Non-Stack) 방식의 케이디 트리(KD-Tree) 탐색 알고리즘에 관한 것으로서, 보다 자세하게는 그래픽 처리 장치에 적용되며, 이진 트리(Binary Tree)의 일종인 케이디 트리의 탐색 알고리즘에서 중복되어 방문하는 노드의 수를 줄여 탐색 알고리즘의 성능을 향상시킬 수 있는 광선 추적을 위한 비 스택 방식의 케이디 트리 탐색 알고리즘을 적용한 영상검출 장치 및 방법에 관한 것이다.The present invention relates to a non-stack KD-Tree search algorithm for ray tracing, which is operated in a graphics processing unit (GPU), and more particularly. A non-stacked cad tree for ray tracing, which is applied to the graphics processing unit and improves the performance of the navigator algorithm by reducing the number of duplicated nodes in the cad tree search algorithm, a kind of binary tree. An image detection apparatus and method applying a search algorithm are provided.
본 발명의 광선 추적을 위한 비 스택 방식의 케이디 트리 탐색 알고리즘을 적용한 영상검출 장치는 영상을 이진트리 형식으로 분할하고 최종 분할된 영역을 단말노드로 하고, 광선 추적을 이용하여 상기 영상에 포함된 물체를 검출하기 위한 케이디 트리 알고리즘을 포함하는 장치에 있어서, 영상에 투과할 광선을 생성하기 위한 광선생성부와 상기 이진트리의 단말노드 방향으로 이동하면서 상기 물체와 상기 광선이 교차하는 트라이앵글을 탐색하기 위한 하향탐색부와 상기 하향탐색부를 통해 탐색을 수행한 이후, 탐색되지 않은 내부노드를 검색하기 위한 상향탐색부 및 상기 하향탐색부에서 검출된 물체 교차점의 컬러를 계산하기 위한 쉐이딩/텍스쳐 매핑부로 이루어짐에 기술적 특징이 있다.An image detection apparatus using a non-stacked Cady Tree search algorithm for ray tracing according to an embodiment of the present invention divides an image into a binary tree format, uses a final segment as an end node, and includes an object included in the image using ray tracing. A device comprising a Cady Tree algorithm for detecting a signal, comprising: a ray generator for generating a ray to be transmitted to an image, and a triangle for crossing the object and the ray while moving in a direction of a terminal node of the binary tree After the search through the down-search unit and the down-search unit, an up-search unit for searching the undiscovered internal node and a shading / texture mapping unit for calculating the color of the object intersection point detected by the down search unit. There are technical features.
광선 추적, 케이디 트리, 스택, 영상검출 Ray Tracing, Cady Tree, Stack, Image Detection
Description
도 1은 종래의 스택을 이용한 케이디 트리에 의한 영상분할 및 광선을 도시한 구성도,1 is a block diagram showing image segmentation and light beams by a caddy tree using a conventional stack;
도 2는 종래의 스택을 이용한 케이디 트리에서의 노드 이동을 도시한 구조도,2 is a structural diagram showing a node movement in a Caddy tree using a conventional stack;
도 3은 종래의 스택을 이용한 케이디 트리에 의한 스택기반 탐색 방법을 도시한 흐름도,3 is a flowchart illustrating a stack-based search method using a CAD tree using a conventional stack;
도 4는 종래의 비 스택을 이용한 케이디 트리에 의한 영상분할 및 광선을 도시한 구성도,4 is a block diagram showing image segmentation and light beams by a caddy tree using a conventional non-stack;
도 5는 종래의 비 스택을 이용한 케이디 트리에 의한 상하향탐색을 도시한 흐름도,5 is a flow chart showing the up and down navigation by the Caddy tree using a conventional non-stack,
도 6은 본 발명에 따른 비 스택을 이용한 케이디 트리 탐색 알고리즘을 적용한 영상검출 장치의 구성도, 6 is a block diagram of an image detection apparatus to which a Cady Tree search algorithm using a non-stack according to the present invention;
도 7은 본 발명에 따른 영상검출 장치 내에 포함된 탐색부의 구성도,7 is a configuration diagram of a search unit included in an image detection apparatus according to the present invention;
도 8은 본 발명에 따른 케이디 트리에 의한 영상분할 및 광선을 도시한 구성도,8 is a block diagram showing image segmentation and light beam by the Caddy tree according to the present invention;
도 9는 본 발명에 따른 비 스택을 이용한 케이디 트리에서의 노드 이동을 도시한 구성도,9 is a block diagram showing a node movement in the Cady tree using a non-stack in accordance with the present invention,
도 10은 본 발명에 따른 비 스택을 이용한 케이디 트리에서의 노드 탐색 방법을 나타내는 흐름도이다.10 is a flowchart illustrating a node searching method in a Cady tree using a non-stack according to the present invention.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
110 : 광선 생성부 120 : 탐색부110: ray generator 120: search unit
130 : 하향 탐색부 131 : 레이-트라이앵글 교차테스트부130: downward navigation unit 131: ray-triangle cross test unit
132 : 제1역다중화기 140 : 상향 탐색부132: first demultiplexer 140: upward search unit
141 : 노드결정부 142 : 하향탐색 노드결정부141: node determination unit 142: downward navigation node determination unit
143 : 레이-박스 교차테스트부 144 : 제2역다중화기143: ray-box cross test unit 144: second demultiplexer
150 : 쉐이딩/텍스쳐 맵핑부150: shading / texture mapping unit
본 발명은 그래픽 처리 장치(GPU : Graphics Processing Unit)에서 동작되는 레이 트레이싱(Ray-Tracing)을 위한 논스택(Non-Stack) 방식의 케이디 트리(KD- Tree) 탐색 알고리즘에 관한 것으로서, 보다 자세하게는 그래픽 처리 장치에 적용되며, 이진 트리(Binary Tree)의 일종인 케이디 트리의 탐색 알고리즘에서 중복되어 방문하는 노드의 수를 줄여 탐색 알고리즘의 성능을 향상시킬 수 있는 광선 추적을 위한 비 스택 방식의 케이디 트리 탐색 알고리즘을 적용한 영상검출 장치 및 방법에 관한 것이다.The present invention relates to a non-stack KD-tree search algorithm for ray tracing that is operated in a graphics processing unit (GPU), and more specifically, A non-stacked cad tree for ray tracing, which is applied to the graphics processing unit and improves the performance of the navigator algorithm by reducing the number of duplicated nodes in the cad tree search algorithm, a kind of binary tree. An image detection apparatus and method applying a search algorithm are provided.
일반적으로 컴퓨터의 영상정보 처리, 가속화, 신호전환, 화면출력을 담당하는 그래픽카드는 비디오 램과 그래픽 칩에 따라 성능이 달라진다. 중앙처리장치(CPU)의 그래픽 작업으로 인해 생기는 병목 현상을 해결하기 위해 만든 것이 그래픽 가속기능으로, 그래픽카드를 그래픽 가속기(Graphics Accelerator)라고도 한다. 기존의 CPU가 처리하던 트랜스폼(transform)과 라이트닝(lighting)을 그래픽 처리 장치가 대신 처리하여, 중앙처리장치의 사이클을 다른 작업을 위해 사용하고 부담을 줄이고 좀 더 자유롭게 사용할 목적으로 개발되었다. 그래픽 처리 장치(GPU : Graphics Processing Unit)는 원래 3D그래픽을 구현하는 데 있어 애플리케이션을 위해 사용했던 3D그래픽 가속 칩을 개량한 것이다. 그래픽 연산처리를 하는 반도체 칩으로, 코어라고도 한다. GPU가 빠르다는 것은 코어의 속도가 빠르다는 것을 뜻한다. 따라서, CPU의 처리량은 줄었지만 GPU의 처리량은 계속 증가함에 따라 많은 열이 발생하여 CPU처럼 방열판이나 냉각팬이 설치되는 경우가 많다.In general, the graphics card that handles computer image information, acceleration, signal conversion, and screen output depends on the video RAM and graphics chip. It was created to solve the bottleneck caused by the CPU's graphic work. Graphics card is also called Graphics Accelerator. The graphics processing unit handles transforms and lightings that were previously handled by the CPU, and was developed to use the central processing unit's cycle for other tasks, reduce the burden, and use it more freely. The Graphics Processing Unit (GPU) is an improvement on the 3D graphics acceleration chip that was originally used for applications in implementing 3D graphics. A semiconductor chip that performs graphics arithmetic processing, also called a core. Faster GPUs mean faster cores. Therefore, the throughput of the CPU is reduced, but as the throughput of the GPU continues to increase, a lot of heat is generated, and a heat sink or cooling fan is often installed like a CPU.
따라서, 컴퓨터가 사양이 다양해지고 고속, 고성능화되면서 그래픽 처리 장치의 중요성은 더 높아졌다. 특수효과를 내는 필터를 사용하는 프로그램과 점차 디지털 신호 처리(DSP : Digital Signal Processing)적인 프로세서로 변해감에 따라 그래픽 처리 장치의 처리량도 늘고 있다.Thus, as computers become more versatile, faster, and higher in performance, the importance of graphics processing devices becomes more important. As the use of special effects filters and digital signal processing (DSP) processors gradually increases, the throughput of graphic processing devices is increasing.
이러한 그래픽 처리 장치에 포함되어 영상에 포함된 물체를 검출하기 위한 알고리즘인 케이디 트리는 옥트리(Octree)와 같은 공간 분할 트리(Spatial Partitioning Tree)의 일종이다. 옥트리는 부모노드(parent-node)의 각 좌표축 중간을 분할하는 방법으로 8개의 서브노드(sub-node) 생성한다.Caddy tree, which is an algorithm included in the graphic processing device and detects an object included in an image, is a kind of spatial partitioning tree such as an octree. The octree creates eight sub-nodes by dividing the middle of each coordinate axis of the parent node.
도 1은 종래의 스택을 이용한 케이디 트리에 의한 영상분할 및 광선을 도시한 구성도이다. 도 1에 도시된 바와 같이, 케이디 트리는 임의의 평가함수에 의해 선택된 하나의 좌표축에 대해 평가함수가 최소화될 수 있는 위치를 중심으로 2개의 영역으로 분할하는 방식을 특정 한계 값에 도달할 때까지 반복적으로 수행하여 입력된 영상을 분할한다. 1 is a block diagram showing image segmentation and light beams by a caddy tree using a conventional stack. As shown in FIG. 1, the Cady Tree iteratively divides two regions around a position where an evaluation function can be minimized for one coordinate axis selected by an arbitrary evaluation function until a specific limit value is reached. Divides the input image.
이렇게 생성된 케이디 트리는 광선(ray)과 교차(intersection)되는 물체를 빠르게 검색하기 위해 사용된다. The Cady tree created in this way is used to quickly search for an object that intersects a ray.
도 2는 종래의 스택을 이용한 케이디 트리에서의 노드 이동을 도시한 구조도이다. 도 2에 도시된 바와 같이, 보여지는 이진트리는 도 1에서 분할된 영상을 트리구조로 표현한 것으로서, 영상을 검출하기 위한 트리의 탐색은 루트노드(S0)에서부터 시작하게 된다.2 is a structural diagram showing node movement in a Caddy tree using a conventional stack. As shown in FIG. 2, the binary tree shown is a tree structure of the image segmented in FIG. 1, and the search for the tree for detecting the image starts from the root node S0.
루트노드(S0)와 광선의 교차를 검사하고, 만약 광선과 물체의 교차가 수행되는 경우, 루트노드(S0)의 2개의 자식노드 중에서 광선시점으로부터 먼 쪽에 있는 자식노드(S2)(제2노드)를 스택에 넣고, 광선시점으로부터 가까이에 있는 쪽의 자식노드(S1)(제1노드)에 대해서 부모노드인 루트노드(S0)와 같이 재귀적으로 교차테스 트를 수행한다. The intersection of the root node S0 and the ray is examined, and if the intersection of the ray and the object is performed, the child node S2 (second node) farthest from the ray start point among the two child nodes of the root node S0. ) Is placed on the stack, and the child node S1 (first node) closer to the ray viewpoint is recursively cross-tested as the parent node root node S0.
즉, 루트노드(S0)의 자식노드 중 하나인 제1노드(S1)의 교차테스트를 수행하여 제1노드(S1)의 하위노드에 광선과 교차되는 영역을 포함하고 있다면, 제1노드(S1)에 포함된 2개의 자식노드 중에서 광선시점으로부터 먼 쪽에 있는 자식노드(n2)(제2노드)를 스택에 삽입하고, 가까이에 있는 쪽의 자식노드(n1)(제1노드)의 교차테스트인 광선과 제1노드(n1)에 포함된 트라이앵글의 교차테스트를 수행한다.That is, if a cross-test of the first node S1, which is one of the child nodes of the root node S0, is performed and the subnode of the first node S1 includes an area intersecting the light beam, the first node S1 ) Inserts the child node n2 (second node) farthest from the ray start point out of the two child nodes included in the stack, and cross-tests the child node n1 (first node) of the adjacent one. The cross test of the light beam and the triangle included in the first node n1 is performed.
이후, 제1노드(n1)의 교차테스트가 수행된 결과 교차점을 찾지 못했을 경우, 다음으로 테스트할 노드를 지정함에 있어서, 제1노드는 자식노드가 존재하지 않기 때문에 스택에 저장된 노드인 제2노드(n2)를 꺼내어 탐색을 다시 수행한다. Subsequently, when the intersection test is not found as a result of the cross test of the first node n1, in designating a node to be tested next, the first node is a second node that is a node stored in the stack because no child node exists. Take out (n2) and perform the search again.
즉, 도 2에 도시된 트리에서 스택에 저장될 노드는 S2, n2, n4이며, 전체 노드의 방문순서는 S0, S1, n1, n2, S2, n3, n4로 이루어진다.That is, in the tree shown in FIG. 2, nodes to be stored in the stack are S2, n2 and n4, and the visit order of all nodes is S0, S1, n1, n2, S2, n3, n4.
도 3은 종래의 스택을 이용한 케이디 트리에 의한 스택기반 탐색 방법을 도시한 흐름도이다. 도 3에 도시된 바와 같이, 루트노드의 교차점 테스트를 수행하고(S110), 루트노드의 하위노드 내에 교차점이 존재하는 경우, 루트노드의 자식노드 중 제2노드를 스택에 저장하고(S120) 탐색을 위해 제1노드로 이동한다(S130). 이때, 제1노드가 단말노드인 경우(S140), 단말노드 내에 포함된 트라이앵글과 광선과의 교차점을 검출하고(S150), 제1노드가 단말노드가 아닌 경우(S140), 해당 제1노드를 부모노드로 하여, 부모노드의 자식노드 중 제2노드를 스택에 저장하고(S120) 탐색을 위해 제1노드로 이동한다(S130).3 is a flowchart illustrating a stack-based search method using a CAD tree using a conventional stack. As shown in FIG. 3, when an intersection test of a root node is performed (S110), and when an intersection exists in a lower node of the root node, a second node among the root nodes of the root node is stored in a stack (S120) and searched. In order to move to the first node (S130). In this case, when the first node is the terminal node (S140), the intersection point of the triangle and the light beam included in the terminal node is detected (S150), and when the first node is not the terminal node (S140), the corresponding first node As the parent node, the second node among the child nodes of the parent node is stored in the stack (S120) and moved to the first node for searching (S130).
S150 단계에서 트라이앵글과 광선의 교차가 발생하는 경우(S160), 탐색을 종 료하며, 트라이앵글과 광선의 교차가 발생하지 않는 경우(S160), 스택에 저장된 노드를 검사하여 저장된 노드가 존재한다면(S170), 스택의 제일 상부에 저장된 노드로 이동하여 탐색을 수행한다(S180). If the intersection of the triangle and the ray occurs in step S150 (S160), the search is terminated, and if the intersection of the triangle and the ray does not occur (S160), if the node stored by checking the node stored in the stack exists (S170) In step S180, the controller moves to the node stored at the top of the stack.
만약, 스택에 저장된 노드가 없는 경우(S170), 해당되는 트리의 노드를 모두 방문한 것으로 판단하고, 탐색을 종료한다.If there are no nodes stored in the stack (S170), it is determined that all nodes of the corresponding tree have been visited, and the search ends.
도 4는 종래의 비 스택을 이용한 케이디 트리에 의한 영상분할 및 광선을 도시한 구성도이다. GPU 상에서 스택을 사용하지 않는 방법은 리스타트(Restart)와 백트랙(Backtrack)의 두 가지 케이디 트리 광선추적 알고리즘을 제안하고 있다. 이들 알고리즘은 광선의 교차 허용범위를 변환시킴으로써, 이미 방문한 노드에 대한 재탐색을 하지 않도록 한다. 도 4에 도시된 바와 같이, 케이디 트리에 사용되는 영상을 도 1에서 설명한 바와 같이 분할하고, t_min의 값이 노드 n1보다 앞쪽에 있으므로, 광선시점에서 가까운 노드인 n1노드를 먼저 탐색하고, n1이 탐색된 이후, t_min과 t_max는 (b)와 같이 조절한다.4 is a block diagram showing image segmentation and light beams by a caddy tree using a conventional non-stack. A method that does not use a stack on a GPU suggests two Cady Tree raytrace algorithms: Restart and Backtrack. These algorithms transform the intersection tolerance of the rays, thus avoiding rediscovering already visited nodes. As shown in FIG. 4, the image used for the Caddy tree is divided as described in FIG. 1, and since the value of t_min is ahead of the node n1, the node n1, which is a node close to the ray time point, is first searched, and n1 is After the search, t_min and t_max are adjusted as in (b).
다음으로 n2를 탐색할 경우, t_min과 t_max 사이에 노드 n1이 포함되지 않으므로, n2만이 선택되어 탐색을 수행한다.Next, when searching for n2, since node n1 is not included between t_min and t_max, only n2 is selected to perform the search.
이때, 리스타트(Restart) 방식은 트리의 단말노드에서 광선과 교차된 트라이앵글을 찾지 못할 경우, t_min 값을 변경한 후, 루트노드에서부터 다시 하향탐색을 통해 탐색을 수행하는 것이며, 백트랙(Backtrack)은 자식노드가 부모노드에 대한 포인터(pointer)를 이용하여 부모노드로의 상향탐색을 수행할 때 사용한다. 이중 리스타트(Restart) 알고리즘은 메모리 사용량에 있어서, 백트랙(Backtrack) 보다 우수하고, 백트랙(Backtrack)은 수행 성능에서 리스타트(Restart) 보다 우수하다. At this time, if the restart method does not find a triangle that intersects a ray at the terminal node of the tree, the t_min value is changed, and then the search is performed by searching downward again from the root node. Is used when the child node performs a search up to the parent node using a pointer to the parent node. The double restart algorithm is superior to backtrack in memory usage, and the backtrack is superior to restart in performance.
두 개의 알고리즘 중에서 백트랙(Backtrack) 알고리즘의 경우, 내부 노드에 대해서 최대 3번의 방문 및 경계선 검출 테스트가 필요한 문제점을 내포하고 있다.Among the two algorithms, the backtrack algorithm has a problem that up to three visits and boundary detection tests are required for internal nodes.
도 5는 종래의 비 스택을 이용한 케이디 트리에 의한 상하향탐색을 도시한 흐름도이다. 도 5에 도시된 바와 같이 하향탐색을 통해 단말노드에 도착한 경우 광선과 단말노드 내에 포함된 트라이앵글과의 교차점을 검출한다(S210). 이후 교차점이 발견되지 않으면(S220), t_min에 t_max를 대입하고, t_max에는 global_max를 대입한다(S230). 이후, 부모노드로 이동하고(S240), 해당되는 부모노드에 포함되는 자식노드 중에서, 탐색이 이루어지지 않은 자식노드가 있는 경우(S250), 해당되는 자식노드로 이동하여(S260), 하향탐색을 수행하기 위해 S210 단계로 이동한다(S270). FIG. 5 is a flowchart illustrating up and down navigation by a Caddy tree using a conventional non-stack. As shown in FIG. 5, when the terminal node arrives through the downlink search, the intersection point between the ray and the triangle included in the terminal node is detected (S210). After the intersection is not found (S220), t_max is substituted for t_min, and global_max is substituted for t_max (S230). Subsequently, when moving to the parent node (S240), and among the child nodes included in the corresponding parent node, if there is a child node that has not been searched (S250), the mobile node moves to the corresponding child node (S260), and searches downward. In step S210 to perform (S270).
만약, 해당 부모노드의 자식노드 중 모든 노드에 대한 탐색이 이루어진 경우(S250), 해당 부모노드의 부모노드로 이동하여 S250 단계부터 재수행한다(S240).If the search for all nodes among the child nodes of the parent node is made (S250), the process moves to the parent node of the parent node and re-executes from step S250 (S240).
도 1 내지 도 3에서 도시한 바와 같이, 스택을 사용하는 케이디 트리의 경우, 메모리 쓰기 동작을 수행해야 하기 때문에 멀티 파이프 라인을 이용하여 동작을 수행하는 그래픽 처리 장치에서는 메모리 충돌이 빈번하게 발생하여 데이터 병목현상이 초래되는 문제점이 있다. As shown in FIGS. 1 to 3, in the case of the Caddy tree using the stack, since a memory write operation must be performed, a memory conflict frequently occurs in a graphic processing apparatus that performs an operation using a multi-pipeline. There is a problem that causes bottlenecks.
또한, 도 4 내지 도 5에서 도시한 바와 같이, 리스타트(Restart)와 백트랙(Backtrack)은 단말노드 방문 후 다음 방문 노드를 선택하기 위해 항상 부모노드에 대한 경계선 검출 테스트를 필요로 한다. 따라서, 처음 하향탐색시 방문했던 노 드에 대해 최대 2번의 방문 및 경계선 검출 테스트를 더 수행해야 한다. 따라서, 스택을 사용하는 알고리즘 대비 최대 약 3배 정도의 성능저하가 발생하는 문제점이 있다.In addition, as shown in FIGS. 4 to 5, restart and backtrack always require a boundary detection test for a parent node to select a next visit node after a terminal node visit. Therefore, up to two more visit and border detection tests should be performed on the node that was visited during the first down search. Therefore, there is a problem that a performance degradation of up to about 3 times compared to an algorithm using a stack occurs.
본 발명은 종래 기술의 문제점을 해결하기 위한 것으로, 스택 및 메모리 쓰기 기능이 필요하지 않은 케이디 트리 탐색 알고리즘을 적용한 영상검출 장치를 제공하는 데에 목적이 있다.The present invention is to solve the problems of the prior art, and an object of the present invention is to provide an image detection apparatus that applies a Cady tree search algorithm that does not require a stack and memory write function.
또한, 본 발명은 리스타트(Restart)와 백트랙(Backtrack) 탐색시 중복 연산을 최소화하기 위해 동일한 노드를 평균 1.5번 이상 방문하지 않는 케이디 트리 탐색 방법을 제공하는 데에 목적이 있다.Another object of the present invention is to provide a cady tree search method in which the same node is not visited more than 1.5 times on average in order to minimize duplicate operations during restart and backtrack search.
본 발명의 상기 목적은 영상을 이진트리 형식으로 분할하고 최종 분할된 영역을 단말노드로 하고, 광선 추적을 이용하여 상기 영상에 포함된 물체를 검출하기 위한 케이디 트리 알고리즘을 포함하는 장치에 있어서, 영상에 투과할 광선을 생성하기 위한 광선생성부와 상기 이진트리의 단말노드 방향으로 이동하면서 상기 물체와 상기 광선이 교차하는 트라이앵글을 탐색하기 위한 하향탐색부와 상기 하향탐색부를 통해 탐색을 수행한 이후, 탐색되지 않은 내부노드를 검색하기 위한 상향탐색부 및 상기 하향탐색부에서 검출된 물체 교차점의 컬러를 계산하기 위한 쉐이딩/텍 스쳐 매핑부에 의해 달성된다.The above object of the present invention is to divide the image into a binary tree format, the final divided region as a terminal node, and includes a Cady tree algorithm for detecting an object included in the image using ray tracing, After searching through the downlink search unit and the downlink search unit for searching the triangle crossing the object and the light beam while moving in the direction of the light generating unit and the terminal node of the binary tree, It is achieved by an uplink searcher for searching for an undiscovered internal node and a shading / texture mapping unit for calculating the color of the object intersection point detected by the downsearcher.
또한, 본 발명의 다른 목적은 영상을 이진트리 형식으로 분할하고 최종 분할된 영역을 단말노드로 하고, 광선 추적을 이용하여 상기 영상에 포함된 물체를 검출하기 위한 케이디 트리 알고리즘을 이용한 영상검출 방법에 있어서, 루트노드로부터 하위노드의 제1노드를 하향탐색하는 제1단계와 상기 하향탐색을 통해 단말노드를 발견하는 경우, 상기 광선과 단말노드 내의 트라이앵글의 교차점을 검출하는 제2단계와 상기 제2단계에서 상기 교차점이 발견되지 않는 경우, 현재 노드의 형제노드의 위치를 검출하는 제3단계와 상기 제3단계에서 형제노드가 이미 탐색을 완료한 경우, 부모노드의 형제노드로 이동하는 제4단계와 상기 부모노드의 형제노드의 주소를 판단하는 제5단계와 상기 부모노드의 형제노드의 탐색이 이루어지지 않은 경우, 해당되는 노드의 하위노드들 중에서 상기 광선과의 교차점을 검출하는 제6단계 및 상기 제6단계에서 상기 광선과의 교차점이 검출되는 경우, 제1단계부터의 탐색을 수행하는 제7단계에 의해 달성된다.In addition, another object of the present invention is to divide the image into a binary tree format, the final segmented region as a terminal node, an image detection method using a Cady tree algorithm for detecting an object included in the image using ray tracing. In an embodiment, a first step of searching a first node of a lower node from a root node and a second step of detecting an intersection point of the light beam and a triangle in the terminal node when the terminal node is found through the down-searching method A third step of detecting the position of the sibling node of the current node if the intersection point is not found in the step; and a fourth step of moving to the sibling node of the parent node if the sibling node has already searched in the third step. And a fifth step of determining an address of a sibling node of the parent node and a corresponding node if the sibling node of the parent node has not been searched. From among the lower nodes of the sixth step and the sixth step of detecting the point of intersection with the light beam is achieved by a seventh step for performing a search in the case where the intersection of the rays detected from the first step.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.Prior to this, terms or words used in the specification and claims should not be construed as having a conventional or dictionary meaning, and the inventors should properly explain the concept of terms in order to best explain their own invention. Based on the principles that can be defined, it should be interpreted as meanings and concepts corresponding to the technical spirit of the present invention.
도 6은 본 발명에 따른 비 스택을 이용한 케이디 트리 알고리즘을 적용한 영 상검출 장치의 구성도이다. 도 6에 도시된 바와 같이, 영상검출 장치는 영상에 투과할 광선을 생성하기 위한 광선 생성부(110), 분할된 영상에 대한 노드를 탐색하기 위한 탐색부(120), 광선과 단말노드 내에 포함된 트라이앵글이 교차되는 교차점을 분석하기 위한 쉐이딩/텍스쳐 맵핑부(150)를 포함하고 있다.6 is a block diagram of an image detection apparatus to which the Cady Tree algorithm using the non-stack according to the present invention is applied. As shown in FIG. 6, the image detecting apparatus includes a
이때, 탐색부(120)는 루트노드로부터 단말노드까지 탐색하기 위한 하향탐색부(130)와 단말노드에서 부모노드로의 탐색을 위한 상향탐색부(140)로 구성되어 있다.In this case, the
도 7은 본 발명에 따른 영상검출 장치 내에 포함된 탐색부의 구성도이다. 도 7에 도시된 바와 같이, 탐색부(120)는 하향탐색부(130)와 상향탐색부(140)로 나뉘며 각 구성요소 간의 신호는 광선의 정보와 노드 정보를 포함한다. 또한, 노드가 단말노드일 경우, 트라이앵글 리스트를 포함한다. 7 is a block diagram of a search unit included in the image detection apparatus according to the present invention. As illustrated in FIG. 7, the
하향탐색부(130)는 루트노드로부터 하위노드 방향으로 교차점 탐색을 수행하면서 단말도드에 도착한 경우, 광선의 정보와 단말노드에 포함된 트라이앵글 정보를 이용하여 광선과 트라이앵글과의 교차점을 검색하는 레이-트라이앵글 교차테스트부(131)를 포함하며, 레이-트라이앵글 교차테스트부(131)에서 광선과 트라이앵글이 교차되는 경우, 쉐이딩/텍스쳐 맵핑부(150)에 광선과 노드 정보의 전송 경로를 설정하기 위한 제1역다중화기(132)를 포함한다.When the down-
상향탐색부(140)는 하향탐색부(130)에서 단말노드에 존재하는 트라이앵글과 광선의 교차점을 검색하여, 교차점이 존재하지 않는 경우, 다음 탐색을 수행할 노드를 결정하기 위한 노드 결정부(141)를 포함한다.The
또한, 다음 탐색을 수행할 노드가 부모노드의 형제노드로 결정될 경우, 하향탐색을 수행할 노드를 찾는 하향탐색 노드결정부(142)와 하향탐색 노드결정부(142)에서 결정된 노드가 제1노드(near 노드)일 경우, 광선과 영상의 경계선을 검출하기 위한 레이-박스 교차테스트부(143)를 포함하고 있다.In addition, when the node to perform the next search is determined as the sibling node of the parent node, the nodes determined by the downlink
또한, 레이-박스 교차테스트부(143)에서 광선과 경계선이 교차되는 경우, 해당 노드에서부터 하향탐색을 하기 위해 광선의 정보와 노드 정보를 전송하기 위한 전송경로를 설정하는 제2역다중화기(144)를 포함할 수 있다.In addition, when the ray-
하향탐색부(130)에서 하향탐색을 통해 단말노드에 도착한 경우, 하향탐색부(130)에 포함된 레이-트라이앵글 교차테스트부(131)는 트라이앵글 정보와 광선의 정보를 이용하여 단말노드에서의 광선과 트라이앵글과의 교차점을 검색하고, 교차점이 검색되는 경우, 제1역다중화기(132)를 통해서 쉐이딩/텍스쳐 맵핑부(150)로 교차점 정보와 광선의 정보를 전송한다.When the down-
만약 레이-트라이앵글 교차테스트부(131)에서 교차점이 검출되지 않는 경우, 제1역다중화기(132)를 통해서 상향탐색부(140)에 포함된 노드결정부(141)로 광선의 정보와 노드 정보를 전송한다.If the intersection point is not detected by the ray-triangle
노드결정부(141)는 다음 탐색을 수행할 노드를 결정함에 있어서, 다음에 처리할 노드가 해당 노드의 형제노드인 경우, 다음에 탐색이 수행될 노드 역시 단말노드에 해당하므로, 노드 정보 및 광선의 정보를 레이-트라이앵글 교차테스트부(141)로 전송하여, 광선과 트라이앵글의 교차점을 검색한다.In determining the node to perform the next search, the
만약 노드결정부(141)에서 결정된 노드가 부모노드의 형제노드일 경우, 하향 탐색 노드결정부(142)에서 하향탐색을 수행할 부모노드의 형제노드를 결정하며, 하향탐색 노드결정부(142)에서 결정된 하향탐색 노드가 제2노드(far 노드)일 경우, 결정된 노드의 부모노드의 형제노드를 탐색하고, 결정된 하향탐색 노드가 제1노드(near 노드)일 경우, 레이-박스 교차테스트부(143)에서 교차점 검색을 수행한다.If the node determined by the
레이-박스 교차테스트부(143)에서 수행된 결과, 교차점이 발견되는 경우, 제2역다중화기(144)를 통해서 하향탐색부(130)에 포함된 레이-트라이앵글 교차테스트부(131)로 광선의 정보와 노드 정보를 전송하여, 하향탐색을 수행하도록 하며, 교차점이 발견되지 않는 경우, 제2역다중화기(146)를 통해 교차테스트 결과정보와 광선의 정보를 하향탐색 노드결정부(142)로 전송하여, 현재 위치한 노드를 기준으로 하여, 다음 탐색을 수행하기 위한 부모노드의 형제노드를 결정한다.When the intersection point is found as a result of the ray-
도 8은 본 발명에 따른 케이디 트리에 의한 영상분할 및 광선을 도시한 구성도이다. 도 8에 도시된 바와 같이, 케이디 트리 알고리즘에 의해 영상은 이진트리 형식으로 분할되며, 광선시점으로부터 광선이 조사된다. 이때, 루트노드는 전체 영상을 포함하는 S0가 해당되며, 단말노드는 더 이상 분할되지 않은 n1 내지 n16이다. 8 is a block diagram illustrating image segmentation and light beams by the Caddy Tree according to the present invention. As shown in FIG. 8, the image is divided into a binary tree format by the Cady Tree algorithm, and the light beam is irradiated from the light beam time point. In this case, the root node corresponds to S0 including the entire image, and the terminal nodes are n1 to n16 which are not divided anymore.
도 9는 본 발명에 따른 비 스택을 이용한 케이디 트리에서의 노드 이동을 도시한 구성도이다. 도 9는 도 8에 도시된 분할된 영상을 이진트리 구조로 표현한 것으로서, 각 화살표는 모든 단말노드에 트라이앵글이 포함된 경우, 루트노드의 하위노드를 방문하기 위한 순서를 나타낸다.9 is a diagram illustrating a node movement in a Cady tree using a non-stack in accordance with the present invention. FIG. 9 is a representation of the divided image illustrated in FIG. 8 in a binary tree structure. Each arrow indicates a sequence for visiting a lower node of a root node when all terminal nodes include triangles.
이때, 루트노드의 자식노드들 중에서 광선시점과 가까이에 위치한 노드를 제 1노드(near 노드)라 하며, 광선시점과 먼 거리에 위치한 노드를 제2노드(far 노드)라 한다. 즉, 단말노드를 제외한 노드들 중에서 임의의 한 노드는 자식노드를 포함하고 있으며, 이 자식노드 중에서 광선시점과 가까이에 있는 노드를 제1노드(near 노드)라 하며, 광선시점과 멀리 떨어져 있는 노드를 제2노드(far 노드)라 한다.At this time, a node located near the ray point of view among the child nodes of the root node is called a first node, and a node located far from the ray point of view is called a second node. That is, any node among the nodes other than the terminal node includes a child node, and a node near the ray point of view is called a first node (near node), and a node far from the ray point of view. Is called a second node (far node).
루트노드로부터 하위노드로의 탐색을 하향탐색이라 하며, 단말노드에서부터 부모의 형제노드를 탐색하는 것을 상향탐색이라 한다. The search from the root node to the child node is called down search, and the search from the terminal node to the sibling node of the parent is called up search.
도 10은 본 발명에 따른 비 스택을 이용한 케이디 트리에서의 노드 탐색 방법을 나타내는 흐름도이다. 도 10에 도시된 바와 같이, 하향탐색부를 통해 루트노드부터 광선과 가까이에 존재하는 노드를 우선으로 노드의 하향탐색을 수행한다(S305). 이후, 단말노드에 도착한 경우, 하향탐색부는 광선의 정보와 단말노드 내에 포함된 트라이앵글 정보를 이용하여 레이-트라이앵글 교차테스트부에서 광선과 트라이앵글과의 교차점을 검색한다(S310).10 is a flowchart illustrating a node searching method in a Cady tree using a non-stack according to the present invention. As shown in FIG. 10, the node is first downlinked from the root node to the light ray through the downlink searcher (S305). Then, when arriving at the terminal node, the downlink search unit searches for the intersection point between the ray and the triangle in the ray-triangle intersection test unit using the information of the ray and the triangle information included in the terminal node (S310).
만약 단말노드에서 교차점을 발견한 경우(S315), 해당되는 교차테스트 결과 정보와 광선의 정보를 제1역다중화기를 이용하여 쉐이딩/텍스쳐 맵핑부로 전송하고(S320), 단말노드에서 교차점을 발견하지 못한 경우(S315), 해당 노드가 광원시점으로부터 최외각에 존재하는 노드인지를 검출한다(S325). If an intersection is found at the terminal node (S315), the corresponding cross test result information and the ray information are transmitted to the shading / texture mapping unit using the first demultiplexer (S320), and the intersection node is not found at the terminal node. If it is (S315), it is detected whether the corresponding node exists in the outermost point from the light source viewpoint (S325).
S325 단계에서 해당하는 노드가 최외각 노드인 경우, 더 이상 탐색할 노드가 존재하지 않는 것으로 판단하여 탐색을 종료하며, 해당 노드가 최외각 노드가 아닐 경우, 해당 노드의 형제노드부터 탐색을 진행한다(S335).In step S325, if the corresponding node is the outermost node, it is determined that the node to be searched no longer exists, and the search ends. If the node is not the outermost node, the search proceeds from the sibling node of the corresponding node. (S335).
만약 이미 검색을 완료하여 재수행할 필요가 없는 경우(S330), 탐색수행을 위해 부모노드의 형제노드로 이동한다(S340). 이때, 부모노드의 형제노드의 주소가 홀수인 경우(즉, 루트노드의 자식노드의 하위노드로서, 제1노드에 해당하는 경우)(S345), 이미 해당 부모노드의 형제노드의 하위 노드까지 탐색을 완료하였으므로, S335 단계부터 재수행하기 위해 이동할 노드의 부모노드의 형제노드로 이동한다. 이후, S335 단계부터 탐색을 재수행한다.If it is already necessary to complete the search and do not need to perform again (S330), to move to the sibling node of the parent node to perform the search (S340). In this case, when the address of the sibling node of the parent node is odd (that is, as a child node of the root node, which corresponds to the first node) (S345), the search is made up to the child node of the sibling node of the parent node already. Since it has been completed, it moves to the sibling node of the parent node of the node to be moved in order to perform again from step S335. Thereafter, the search is performed again from step S335.
만약, 부모노드의 형제노드의 주소가 짝수 주소인 경우(즉, 루트노드의 자식노드 이하의 노드로서, 제2노드에 해당하는 경우)(S345), 아직 교차점 검색을 위한 탐색이 이루어지지 않는 노드로서, 해당 노드의 하위노드에 광선과의 교차점이 존재하는지 검색하여(S350), 해당 노드의 하위노드에 교차점이 검출되는 경우, S305 단계로 이동하여 광선과 트라이앵글의 교차점 검출을 위한 탐색을 재수행한다.If the address of the sibling node of the parent node is an even address (i.e., it is a node below the root node of the root node and corresponds to the second node) (S345), a node that has not yet been searched for intersection search is performed. As a search for whether an intersection point with a ray exists in a lower node of the node (S350), and if an intersection point is detected in a lower node of the node, the process moves to step S305 to re-search for detecting an intersection point of a ray and a triangle. .
본 발명은 이상에서 살펴본 바와 같이 바람직한 실시예를 들어 도시하고 설명하였으나, 상기한 실시예에 한정되지 아니하며 본 발명의 정신을 벗어나지 않는 범위 내에서 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변경과 수정이 가능할 것이다.Although the present invention has been shown and described with reference to the preferred embodiments as described above, it is not limited to the above embodiments and those skilled in the art without departing from the spirit of the present invention. Various changes and modifications will be possible.
따라서, 본 발명의 광선 추적을 위한 비 스택 방식의 케이디 트리 알고리즘을 적용한 영상검출 장치는 스택 및 메모리 쓰기 기능이 필요하지 않은 케이디 트리 탐색 알고리즘을 사용하여 노드를 탐색함에 있어서, 중복 탐색 및 연산 수행시간을 감소시켜 영상검출을 위한 시간을 단축시키는 효과가 있다.Therefore, in the image detection apparatus using the non-stacked Cady Tree algorithm for ray tracing according to the present invention, in searching for a node using a Cady Tree search algorithm that does not require a stack and memory write function, a duplicate search and calculation execution time are required. The effect of reducing the time for image detection is reduced.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060083354A KR100894136B1 (en) | 2006-08-31 | 2006-08-31 | An image detection equipment and the method which applied the KD-tree search algorithm of the non-stack type for ray tracing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060083354A KR100894136B1 (en) | 2006-08-31 | 2006-08-31 | An image detection equipment and the method which applied the KD-tree search algorithm of the non-stack type for ray tracing |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080020198A KR20080020198A (en) | 2008-03-05 |
KR100894136B1 true KR100894136B1 (en) | 2009-04-20 |
Family
ID=39395262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060083354A KR100894136B1 (en) | 2006-08-31 | 2006-08-31 | An image detection equipment and the method which applied the KD-tree search algorithm of the non-stack type for ray tracing |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100894136B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102439632A (en) * | 2009-05-28 | 2012-05-02 | 斯里考纳特斯公司 | Ray tracing core and ray tracing chip including same |
US8836695B2 (en) | 2010-02-01 | 2014-09-16 | Samsung Electronics Co., Ltd. | Image processing apparatus and method of rendering using a ray tracing scheme |
US9965888B2 (en) | 2014-09-30 | 2018-05-08 | Samsung Electronics Co., Ltd. | Method and apparatus for generating and traversing acceleration structure |
US9996966B2 (en) | 2013-11-04 | 2018-06-12 | Samsung Electronics Co., Ltd. | Ray tracing method and apparatus |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101610194B1 (en) | 2008-10-15 | 2016-04-07 | 삼성전자주식회사 | Data Processing Apparatus and Method for Image Processing |
KR101076807B1 (en) * | 2009-05-29 | 2011-10-25 | 주식회사 실리콘아츠 | Ray tracing apparatus and method |
KR101670930B1 (en) * | 2010-05-12 | 2016-11-10 | 삼성전자주식회사 | Apparatus and method for generating kd-tree using hardware |
KR101697238B1 (en) | 2010-08-26 | 2017-01-17 | 삼성전자주식회사 | Image processing apparatus and method |
KR101705581B1 (en) | 2010-09-30 | 2017-02-22 | 삼성전자주식회사 | Data processing apparatus and method |
KR101284324B1 (en) * | 2011-06-29 | 2013-07-08 | 세종대학교산학협력단 | Ray tracing core and ray tracing method |
US9390545B2 (en) | 2012-05-04 | 2016-07-12 | Samsung Electronics Co., Ltd. | Apparatus and method for traversing hierarchical acceleration structure |
KR101993835B1 (en) | 2013-02-25 | 2019-06-27 | 삼성전자주식회사 | Method and apparatus for adaptive stack management |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006065399A (en) | 2004-08-24 | 2006-03-09 | Sony Corp | Image processing device and method, storage medium and program |
-
2006
- 2006-08-31 KR KR1020060083354A patent/KR100894136B1/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006065399A (en) | 2004-08-24 | 2006-03-09 | Sony Corp | Image processing device and method, storage medium and program |
Non-Patent Citations (1)
Title |
---|
정보기술연구소논문지 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102439632A (en) * | 2009-05-28 | 2012-05-02 | 斯里考纳特斯公司 | Ray tracing core and ray tracing chip including same |
US8836695B2 (en) | 2010-02-01 | 2014-09-16 | Samsung Electronics Co., Ltd. | Image processing apparatus and method of rendering using a ray tracing scheme |
US9996966B2 (en) | 2013-11-04 | 2018-06-12 | Samsung Electronics Co., Ltd. | Ray tracing method and apparatus |
US9965888B2 (en) | 2014-09-30 | 2018-05-08 | Samsung Electronics Co., Ltd. | Method and apparatus for generating and traversing acceleration structure |
Also Published As
Publication number | Publication date |
---|---|
KR20080020198A (en) | 2008-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100894136B1 (en) | An image detection equipment and the method which applied the KD-tree search algorithm of the non-stack type for ray tracing | |
US11062501B2 (en) | Vertex processing pipeline for building reduced acceleration structures for ray tracing systems | |
US7089511B2 (en) | Framework for hierarchical VLSI design | |
CN107729094A (en) | The method and device that a kind of user interface renders | |
JP2022106860A (en) | Hierarchy merging | |
TWI395155B (en) | Method and system for processing rays, and computer accessible medium including associated data | |
US20190019325A1 (en) | Hybrid Hierarchy of Bounding and Grid Structures for Ray Tracing | |
KR101697238B1 (en) | Image processing apparatus and method | |
US20060224304A1 (en) | Method for routing multiple paths through polygonal obstacles | |
JP2017188095A (en) | Methods and graphics processing units for determining differential data for rays of ray bundle | |
KR20150109276A (en) | Graphics processing systems | |
WO2022057303A1 (en) | Image processing method, system and apparatus | |
JP2010134919A (en) | System, method, and program for photorealistic imaging using ambient occlusion | |
CN111104224B (en) | FPGA-based dynamic graph processing method | |
KR20150057868A (en) | Method and apparatus for traversing binary tree in a ray tracing system | |
CN114139684A (en) | Graph neural network generation method, device, system, medium, and electronic apparatus | |
JP2010097591A (en) | Data processor and method | |
CN116385624A (en) | Stack buffer memory component for ray tracing hardware accelerator and application method thereof | |
KR101670930B1 (en) | Apparatus and method for generating kd-tree using hardware | |
CN115204105A (en) | Polygonal straight skeleton generation method, pattern matching method, and storage medium | |
TWI474206B (en) | Method and system for sizing polygons in an integrated circuit (ic) layout | |
US11163929B1 (en) | Generate clock network using inverting integrated clock gate | |
Rossignac | Ordered boolean list (OBL): Reducing the footprint for evaluating boolean expressions | |
CN110941940A (en) | 3D winding method, storage device and system based on collision detection | |
US11132490B1 (en) | Using negative-edge integrated clock gate in clock network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120321 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20130402 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |