KR101487454B1 - method for parallel processing of LOD image - Google Patents
method for parallel processing of LOD image Download PDFInfo
- Publication number
- KR101487454B1 KR101487454B1 KR1020140073355A KR20140073355A KR101487454B1 KR 101487454 B1 KR101487454 B1 KR 101487454B1 KR 1020140073355 A KR1020140073355 A KR 1020140073355A KR 20140073355 A KR20140073355 A KR 20140073355A KR 101487454 B1 KR101487454 B1 KR 101487454B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- lod
- core processors
- parallel processing
- processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
Abstract
Description
본 발명은 대용량 영상처리에 관한 것으로, 특히 대용량 영상을 다수 영역으로 분할하여 LOD 영상을 생성하되, 다수의 코어 프로세서를 통해 병렬방식으로 LOD 영상생성처리를 수행하도록 함으로써, 대용량 영상을 고속으로 처리할 수 있도록 해 주는 LOD 영상 병렬처리방법에 관한 것이다.The present invention relates to a large-capacity image processing, and more particularly, to an LOD image generation method in which a LOD image is generated by dividing a large-capacity image into a plurality of regions, and a LOD image generation process is performed in parallel through a plurality of core processors, And a method for parallel processing the LOD image.
지리정보시스템(GIS, Geographic Information System)은 인쇄물 형태로 이용하던 지도 및 지리정보를 컴퓨터를 이용해 작성·관리하고, 여기서 얻은 지리정보를 기초로 데이터를 수집·분석·가공하여 지형과 관련되는 모든 분야에 적용하기 위해 설계된 종합 정보 시스템을 말한다.Geographical Information System (GIS) is a system that creates and manages maps and geographical information used in printed form using a computer, collects, analyzes, and processes data based on the geographical information obtained, The information system is designed to be applied to.
상기한 지리정보시스템은 크게 토지 정보시스템, 도시 정보시스템, 도면 자동화, 시설물 관리 분야로 나누어지지만, 토지·자원·환경·도시·해양·수산·군사·교통·통신·상하수도 등 광범위한 분야에서 이용된다. The geographic information system is divided into land information system, city information system, drawing automation and facility management field, but it is used in a wide range of fields such as land, resource, environment, city, ocean, fishery, military, traffic, communication, .
또한 상기한 지리정보시스템은 지형과 관련된 정보를 보다 실제적인 형태로 제공하기 위하여 사용자 단말을 통해 3D 영상으로 제공되어지도록 대용량 영상을 제공하고 있다. In addition, the geographic information system provides a large-capacity image to be provided as a 3D image through a user terminal in order to provide information related to the terrain in a more practical form.
이때, 사용자 단말 예컨대, 일반 컴퓨터는 지리정보시스템으로부터 제공되어지는 3D 영상과 같은 대용량 영상을 보다 용이하게 처리하기 위해 통상 LOD(Level Of Detail) 기반의 영상처리방식을 이용하게 된다.At this time, a user terminal, for example, a general computer, uses a LOD (Level Of Detail) based image processing method to more easily process a large-capacity image such as a 3D image provided from a geographic information system.
여기서, 상기 "LOD"는 위성영상이나 항공영상 등과 같은 대용량의 영상을 시스템에서 원활하게 관리하기 위해 하나의 영상을 여러 단계의 해상도로 나눈 뒤 사용자의 시야 위치에 따라 적절한 해상도의 영상을 보여주는 방식이다.Here, the "LOD" is a method of dividing one image into several levels of resolution so as to smoothly manage a large-capacity image such as a satellite image or an aerial image in the system, and then displaying a proper resolution image according to a user's view position .
즉, 컴퓨터는 CPU를 이용하여 대용량 영상을 LOD기반 영상으로 변환한 후 이를 그래픽카드 등을 통해 표시창에 가시화하게 된다. That is, a computer converts a large-capacity image into an LOD-based image using a CPU, and visualizes the image on a display through a graphic card or the like.
한편, 컴퓨터를 통해 제공되는 정보가 많아지고 정보의 용량이 커지게 되면서, 현재 일반적으로 사용되는 컴퓨터는 보다 다양한 정보의 처리를 원활하게 하기 위하여 멀티 코어 프로세서(Multi Core Processor) 즉, 복수의 독립 코어 프로세서가 하나의 CPU형태로 구성되어 있다. Meanwhile, as the amount of information provided through a computer increases and the capacity of information increases, computers currently used in general use a multi core processor, that is, a plurality of independent cores The processor is configured as one CPU.
그러나, 통상 컴퓨터에서 대용량 영상을 처리하기 위해서는 하나의 코어 프로세서를 할당하여 LOD 영상처리를 수행하도록 구성되게 되는 바, 일정 크기 이상의 대용량 영상을 처리함에 있어 처리속도가 다소 늦어지는 문제가 있게 된다.However, in order to process a large capacity image in a computer, a single core processor is allocated and LOD image processing is performed. Thus, there is a problem that a processing speed is somewhat delayed in processing a large capacity image of a certain size or more.
특히, 대부분의 지방자치단체나 국가 기관에서는 정기적으로 대용량 영상 정보를 획득하고 이에 대한 유지 보수 및 갱신 작업을 법제화하고 있다. 따라서, 현재 대용량 영상을 처리하는 각종 분야에서 대용량 영상에 대한 보다 효율적인 처리방법이 요구되는 실정이다. In particular, most local governments and state agencies periodically acquire large-scale image information and are making maintenance and updating work for them. Therefore, a more efficient processing method for a large-capacity image is required in various fields for processing a large-capacity image.
[특허문헌][Patent Literature]
1. 한국등록특허 제1236980호 (발명의 명칭: 렌더링 시스템에서 영상 데이터를 변환하기 위한 장치 및 방법)1. Korean Patent No. 1236980 entitled " Apparatus and method for converting image data in a rendering system "
2. 한국등록특허 제0434178호 (발명의 명칭: 단말 수단의 영상 신호 처리 능력에 연동되는 영상데이터의 정밀도 조정 방법 및 조정 시스템) 2. Korean Registered Patent No. 0434178 (entitled " Adjustment Method and Adjustment System for Accuracy of Image Data Interlocked with Video Signal Processing Capability of Terminal means)
이에, 본 발명은 상기한 사정을 감안하여 창출된 것으로, 멀티 코어 프로세서 기반의 컴퓨터장치에서 대용량 영상을 LOD 영상으로 변환 생성하되 다수의 코어 프로세서를 통해 병렬방식으로 동시에 LOD 영상을 생성하도록 함으로써, 보다 고속의 LOD 영상처리가 가능하도록 해 주는 LOD 영상 병렬처리 방법을 제공함에 기술적 목적이 있다. Accordingly, it is an object of the present invention to provide a computer apparatus based on a multicore processor, in which a large capacity image is converted into an LOD image and a LOD image is simultaneously generated in parallel using a plurality of core processors, There is a technical purpose of providing an LOD image parallel processing method which enables high speed LOD image processing.
상기 목적을 달성하기 위한 본 발명의 일측면에 따르면, 멀티 코어 프로세서를 구비하도록 구성되어 대용량 영상을 처리하는 단말에서의 LOD 영상 병렬처리방법에 있어서, 대용량 영상을 다수의 영역으로 분할하고 각 분할 영역에 대한 영상을 다수의 코어 프로세서로 병렬형태로 각각 출력하는 제1 단계와, 상기 다수의 코어 프로세서는 상기 제1 단계에서 제공되는 분할영상을 기 설정된 크기의 다수의 타일영상으로 구성되는 LOD 영상으로 변환하는 제2 단계, 상기 각 코어 프로세서는 해당 코어 프로세서에서 생성된 LOD영상을 데이터메모리의 기 설정된 영역에 저장하는 제3 단계 및, 상기 데이터메모리에 저장된 LOD 영상을 결합하여 출력영상을 생성하는 제4 단계를 포함하여 구성되되, 상기 제 1단계에서 상기 병렬 처리 가능한 다수의 코어 프로세서는 단말에 구비된 코어 프로세서의 수보다 같거나 적게 설정되고, 대용량 영상의 분할영역은 병렬 처리 가능한 코어 프로세서의 수와 동일하거나 많게 설정되는 것을 특징으로 하는 LOD 영상 병렬처리방법이 제공된다.According to an aspect of the present invention, there is provided a method for parallel processing an LOD image in a terminal for processing a large capacity image, the method including dividing a large capacity image into a plurality of regions, And a plurality of core processors, respectively, for outputting the divided images provided in the first step to an LOD image composed of a plurality of tile images of a predetermined size A third step of storing the LOD image generated by the corresponding core processor in a predetermined area of the data memory, and a third step of combining the LOD images stored in the data memory to generate an output image, Wherein the plurality of core processors capable of parallel processing in the first step comprise: Wherein the number of core processors included in the terminal is set to be equal to or less than the number of core processors provided in the terminal, and the partition area of the large capacity image is set to be equal to or greater than the number of core processors capable of parallel processing.
삭제delete
삭제delete
삭제delete
삭제delete
삭제delete
또한, 상기 제2 단계에서 병렬 처리 가능한 각 코어 프로세서는 기 설정된 전역변수를 이용하여 LOD 생성처리를 수행하는 것을 특징으로 하는 LOD 영상 병렬처리방법이 제공된다.Also, in the second step, each core processor capable of parallel processing performs an LOD generation process using a predetermined global variable.
또한, 상기 제3 단계에서 병렬 처리 가능한 각 코어 프로세서는 자신에게 할당된 LOD 영역의 다수 타일영상에 대한 위치에 대응되는 좌표값을 설정하고, 해당 좌표값을 근거로 저장폴더명을 설정하여 좌표값에 대응되는 타일영상을 해당 저장폴더내에 저장하는 것을 특징으로 하는 LOD 영상 병렬처리방법이 제공된다.In the third step, each of the core processors capable of parallel processing sets coordinate values corresponding to positions of a plurality of tile images of the LOD area allocated to the core processor, sets a storage folder name based on the coordinate values, The tile image corresponding to the tile image is stored in the corresponding storage folder.
본 발명에 의하면 멀티 코어 프로세서를 구비한 단말에서 대용량 영상을 처리함에 있어서, 대용량 영상을 다수의 코어 프로세서를 통해 병렬방식으로 LOD영상을 생성하도록 함으로써, 단말에 구비된 자원의 효율적인 이용을 통해 보다 빠른 고속의 LOD영상 생성처리가 가능함은 물론, 이에 따른 시간 및 비용을 절감하는 효과가 있게 된다. According to the present invention, in processing a large capacity image in a terminal having a multicore processor, it is possible to generate an LOD image in parallel by using a large number of images through a plurality of core processors, Speed LOD image generation process, as well as a time and cost reduction effect.
또한, 상기 다수의 코어 프로세서를 통해 병렬처리함에 있어서 각 코어 프로세서에 전역변수를 설정하여 LOD영상을 처리하도록 함으로써, 각 코어 프로세서간 간섭이 발생하지 않음으로써, 보다 효율적인 LOD 영상처리가 가능하게 된다. In addition, when parallel processing is performed through the plurality of core processors, global variables are set in each core processor to process the LOD image, so that interference between the core processors does not occur, and more efficient LOD image processing becomes possible.
도1은 본 발명에 적용되는 LOD 영상 병렬처리장치의 내부구성을 기능적으로 분리하여 나타낸 블록구성도.
도2는 도1에 도시된 환경설정수단(300)의 기능을 블럭화하여 나타낸 도면.
도3 내지 도5는 도1에 도시된 LOD 처리수단(400)에서 처리되는 LOD 영상처리과정을 예시한 도면.
도6은 도1에 도시된 LOD 영상 병렬처리장치의 동작을 설명하기 위한 플로우챠트.
도7은 도1에 도시된 LOD 영상 병렬처리장치에서 코어 프로세서 수에 따른 LOD 영상처리 실행시간 측정실험결과표.BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an internal configuration of an LOD image parallel processing apparatus according to the present invention, which is functionally separated; FIG.
Fig. 2 is a block diagram showing the function of the configuration means 300 shown in Fig. 1; Fig.
FIGS. 3 to 5 are diagrams illustrating an LOD image processing process performed by the
FIG. 6 is a flow chart for explaining the operation of the LOD image parallel processing apparatus shown in FIG. 1. FIG.
FIG. 7 is a graph showing an execution time measurement result of the LOD image processing execution time according to the number of core processors in the LOD image parallel processing apparatus shown in FIG.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예를 상세하게 설명하기로 한다.Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도1은 본 발명에 적용되는 LOD 영상 병렬처리장치의 개략적인 구성을 나타낸 도면이다.FIG. 1 is a diagram showing a schematic configuration of an LOD image parallel processing apparatus according to the present invention.
도1에 도시된 바와 같이 본 발명에 적용되는 LOD 영상 병렬처리장치는 영상분석처리수단(100)과, 영상분할처리수단(200), 환경설정수단(300), LOD 처리수단(400) 및 출력영상 생성수단(500)을 포함하여 구성된다. 이때, 상기 LOD 처리수단(400)은 다수의 코어 프로세서(410)와 데이터메모리(420)를 포함하여 구성된다.1, the LOD image parallel processing apparatus according to the present invention includes an image
상기 영상분석처리수단(100)은 입력되는 대용량 영상에서 해당 영상의 좌표계와 좌표, 지구타원체 등을 포함하는 공간 영역정보를 구성하는 각종 좌표정보를 추출한다.The image analysis processing means 100 extracts various coordinate information constituting the spatial region information including the coordinate system, coordinates, and earth ellipsoid of the corresponding image from the inputted large-capacity image.
상기 영상분할처리수단(200)은 대용량 영상을 다수의 영역으로 분할하고 각 분할 영역에 대한 영상을 상기 LOD처리수단(400)으로 병렬방식으로 제공한다. 이때, 상기 영상분할처리수단(200)은 대용량 영상을 LOD 처리수단(400)을 구성하는 병렬 처리 코어 프로세서 수에 대응되는 수의 영상 영역으로 분할하여 각 분할 영상을 각 코어 프로세서로 병렬방식으로 제공한다. The image segmentation processing means 200 divides a large-capacity image into a plurality of regions and provides an image for each divided region to the LOD processing means 400 in a parallel manner. At this time, the image
상기 환경설정수단(300)은 해당 대용량 영상에 대한 해상도 레벨을 설정함과 더불어 현재 병렬처리 가능한 코어 프로세서(410)를 설정한다. 또한, 상기 환경설정수단(300)은 병렬 처리 가능한 코어 프로세서(410)에 대해 서로 다른 전역변수를 설정하고, 데이터메모리(420)에 각 코어 프로세서(410)에서 처리된 LOD 영상을 저장할 서로 다른 메모리 영역을 할당한다. 또한, 환경설정수단(300)은 병렬 처리 가능한 다수의 코어 프로세서(410)에 대응되는 LOD 영상의 분할수를 설정하고, 각 해상도 레벨에 대응되도록 LOD 영상의 타일의 크기 및 타일 수를 설정한다.The environment setting
상기 LOD 처리수단(400)에서 병렬 처리 설정된 코어 프로세서(410)는 상기 영상분할처리수단(200)으로부터 제공되는 해당 분할 영상을 타일링하여 다수의 타일로 구성되는 LOD 영상으로 변환하여 기 설정된 데이터메모리(420)의 해당 영역에 저장한다. The
상기 출력영상 생성수단(500)은 상기 LOD 처리수단(400)의 데이터메모리(420)에 저장된 LOD 영상을 독출한 후 이를 결합하여 출력영상을 생성한다. 이때, 상기 출력영상 생성수단(500)은 각 코어 프로세서(410)에서 처리된 LOD 영상을 데이터메모리(420)의 해당 저장 영역에 저장된 순서대로 독출하여, 서로 다른 영상 영역의 각 LOD 영상을 결합시킴으로써, 출력 영상을 생성하게 된다.The output image generating means 500 reads the LOD image stored in the
도2는 도1에 도시된 환경설정수단(300)의 내부구성을 기능적으로 분리하여 나타낸 도면이다. FIG. 2 is a functional diagram showing the internal configuration of the configuration means 300 shown in FIG.
상기 환경설정수단(300)은 도2에 도시된 바와 같이 해상도 레벨 설정블럭(310)과, 병렬처리 설정블럭(320) 및 LOD 환경설정블럭(330)을 포함하여 구성된다. The
상기 해상도 레벨 설정블럭(310)은 대용량 영상에 대해 사용자 위치에 따른 적어도 하나 이상의 해상도 레벨을 설정한다. 예컨대, 상기 해상도 레벨 설정블럭(210)은 해상도에 따라 해상도 레벨을 "0 ~ 10" 레벨로 설정할 수 있다. 이때, 상기 "10"레벨은 원본 대용량 영상으로 예컨대, 1,000개 타일수를 갖는 LOD로 설정되고, "9"레벨은 500개 타일수를 갖는 LOD, "8"레벨은 250개 타일수를 갖는 LOD, …, 로 설정될 수 있다.The resolution
상기 병렬처리 설정블럭(320)은 해당 컴퓨터 장치에 구비된 다수의 코어 프로세서(410) 중 현재 병렬처리 가능한 코어 프로세서 수 및 병렬처리 가능한 코어 프로세서(410)에서 처리되는 LOD 영상을 저장하기 위한 서로 다른 메모리 영역을 할당한다. 이때, 상기 병렬처리 설정블럭(320)은 해당 컴퓨터 장치가 4개의 코어 프로세서(410)를 구비하는 경우, 사용자의 컴퓨터 이용 상태 등의 작업 환경에 따라 4개의 코어 프로세서를 모두 LOD 병렬처리하도록 설정하거나, 또는 3개의 코어 프로세서만 LOD 병렬처리를 수행하도록 설정할 수 있다. 이러한 LOD 병렬처리 코어 프로세서(410)의 설정은 해당 컴퓨터 장치에서 자동으로 설정하거나 또는 사용자가 임의로 설정하도록 구성될 수 있다. 또한, 상기 병렬처리 설정블럭(320)은 LOD 병렬처리 코어 프로세서(410)에 대해서는 전역 변수를 할당한다. 이는 각 병렬 처리 코어 프로세서(410)에 서로 다른 변수를 각각 할당하고, 임의 코어 프로세서(410)에 할당된 변수에 대해서는 다른 코어 프로세서(410)에서 동일한 변수를 사용하지 못하게 함으로써, 코어 프로세서(410)간의 간섭이 발생하는 것을 방지하기 위함이다. The parallel
또한, 상기 LOD 환경설정블럭(330)은 병렬 처리 가능한 다수의 코어 프로세서(410)에 대응되도록 LOD 영상의 분할수를 설정함과 더불어, 각 해상도 레벨별 각 영상에 대한 타일의 수 및 타일의 크기를 설정한다. 이때, 상기 LOD 설정블럭(230)은 각 해상도 레벨에 대해 해당 해상도 레벨에 대응되는 전체 타일의 수(M)를 병렬 처리 코어 프로세서의 수(N)로 나눔으로써(), 각 병렬 처리 코어 프로세서(410)에 할당되는 타일의 수를 설정한다. 예컨대, 해상도 레벨이 "10"레벨인 영상에 대해 1,000개의 타일수가 설정되고, 4개의 코어 프로세서(410)가 병렬처리 가능한 경우, 10레벨 영상에 대해 제1 내지 제4의 LOD 영상으로 분리되고, 각 LOD 영상은 250개의 타일을 갖도록 설정된다.In addition, the
한편, 도3 내지 도5는 도1에 도시된 LOD 처리수단(400)의 LOD 영상처리과정을 예시한 도면이다. 3 to 5 are views illustrating an LOD image processing process of the
도3에는 병렬 처리 가능한 코어 프로세서(410)가 4개 인 경우를 예시한 도면으로, 하나의 영상 화면에 대해 4개의 분할영역 즉, 서로 다른 영역의 예컨대, ①,②,③,④ 로 표시되는 제1 내지 제4 분할영역이 도시되어 있다. 즉, 제1 내지 제4 코어 프로세서는 각각 제1 내지 제4 분할영역(①,②,③,④)에 대해 독립적으로 LOD 영상을 생성한다. FIG. 3 is a diagram illustrating a case where there are four
또한, 각 코어 프로세서(410)는 도3에 도시된 바와 같이 제1 내지 제4 분할영역(①,②,③,④)에 대해 서로 다른 제1 내지 제4 전역변수, 예컨대 localImage1, localImage2, localImage3, localImage4 를 이용하여 LOD 영상처리를 수행한다. 이때, 각 코어 프로세서(410)는 기 설정된 모든 해상도 레벨(0 내지 n)에 대해 각 해당도 레벨에 대응되는 LOD 영상을 생성한다. As shown in FIG. 3, each of the
이때, 코어 프로세서(410), 예컨대 제1 분할영역(①)에 대한 LOD 영상을 생성하는 제1 코어 프로세서(410)는 도4에 도시된 바와 같이 제1 분할영역(①)에 대한 영상을 기 설정된 크기 및 수의 타일영상(T)으로 분할하여 저장한다. 예컨대, 상기 각 타일영상(T)의 크기는 가로 ×세로가 256 ×256 픽셀로 설정될 수 있으며, 하나의 LOD 영상은 가로 및 세로 각각 4라인씩 16개의 타일영상(T)으로 설정될 수 있다. At this time, the
또한, 상기 코어 프로세서(410)은 각 LOD 영상에 대응되는 타일링정보, 즉, 다수의 타일영상(T)을 데이터메모리(420)의 기 설정된 할당 영역에 저장한다. 이때, 상기 코어 프로세서(410)는 상기 각 타일영상(T)에 대해 가로 방향과 세로 방향 타일영상 위치순서(인덱스)에 대응되는 좌표값을 고유 ID로 부여한다. 즉, 각 타일영상 좌표값은 "(가로방향 인덱스, 세로방향 인덱스)"로 설정된다. 또한, 상기 가로 방향 인덱스 또는 세로 방향 인덱스를 근거로 해당 LOD영상을 저장하기 위한 저장폴더를 생성한 후 해당 저장폴더에 해당 타일영상을 저장한다. 예컨대, 세로 방향 인덱스를 기준으로 저장폴더를 생성한 경우, 세로방향 인덱스가 "0"인 라인을 4자리수로 확장하여 "0000"이라는 저장폴더를 생성한다. 그리고, 좌표값의 세로방향 인덱스, "0"를 근거로 설정된 "0000"폴더명에 대해서는 타일 좌표 중 (0,0),(1,0),(2,0),(3,0)과 같이 세로방향 인덱스가 "0"인 타일 좌표를 갖는 타일 영상을 해당 "0000"폴더에 서로 다른 이미지파일로 저장한다. 이는 병렬 처리 가능한 다수의 코어 프로세서(410)는 서로 독립적으로 LOD 영상생성처리를 수행하게 되고, 이때 어떤 코어 프로세서(410)에서의 처리가 먼저 이루어지는 알 수 없기 때문에, 좌표값에 따른 저장폴더명의 설정을 통해 LOD 영상의 대용량 영상에서의 분할위치를 보다 명확히 하고자 함이다. In addition, the
도5에는 데이터메모리(420)에 형성되는 저장폴더 구성이 예시되어 있다. 즉, 도5에 도시된 바와 같이 데이터메모리(420)는 기 설정된 메모리 영역에 해당 해상도 레벨(0~n, P1)별 타일영상 인덱스(0000~xxxx, P2)가 설정되고, 각 타일영상 인덱스(P2)에 대해 타일 영상(T)이 이미지 파일(0000_0000.jpg, 0000_0001.jpg, 0000_0002.jpg, 0000_0003.jpg, P3)형태로 저장된다.FIG. 5 illustrates a storage folder structure formed in the
한편, 도6은 도1에 도시된 LOD 영상 병렬처리장치의 동작을 설명하기 위한 플로우챠트이다.FIG. 6 is a flowchart illustrating an operation of the LOD image parallel processing apparatus shown in FIG. 1. Referring to FIG.
먼저, LOD 영상 병렬처리장치의 환경설정수단(300)에는 LOD 영상처리를 위한 기본 정보가 설정된다. 즉, 대용량 영상에 대한 적어도 하나 이상의 해상도 레벨이 설정되고, 한 프레임의 영상에 대한 총 타일수 및, 각 타일의 크기정보가 기본 정보로서 미리 설정된다. 이때, 상기 해상도 레벨단계와 총 타일수 및, 타일의 크기는 LOD 영상 병렬처리장치에서 최적화되도록 자동 설정되거나 사용자에 의해 임의로 설정되어질 수 있다. First, basic information for LOD image processing is set in the
상기한 상태에서, LOD 영상 병렬처리장치는 대용량 영상을 병렬처리방식으로 LOD 영상으로 변환하기 위한 병렬처리 환경을 설정한다(ST1). 즉, LOD 영상 병렬처리장치의 환경설정수단(300)은 현재 단말의 상태에서 LOD 영상을 생성하기 위해 병렬 처리가 가능한 코어 프로세서 수를 확인하고, 각 코어 프로세서(410)에 대해 서로 다른 전역변수를 할당함과 더불어, 각 코어 프로세서(410)에 대해 데이터메모리(420)에서 서로 다른 메모리 영역을 할당한다. In the above state, the LOD image parallel processing apparatus sets up a parallel processing environment for converting a large capacity image into an LOD image by a parallel processing method (ST1). That is, the
또한, 영상분할처리수단(200)은 상기 환경설정수단(300)으로부터 제공되는 병렬 처리 코어 프로세서(410) 수를 근거로 이에 대응되는 영상 분할정보 즉, LOD 수와 분할영역 좌표정보를 설정한다. 이때, 영상분할처리수단(200)는 코어 프로세서(410)의 수보다 같거나 많은 수로 LOD 분할영역을 설정할 수 있다. 이는 하나의 코어 프로세서(410)에서 둘 이상의 LOD 처리가 가능한 경우를 고려함이다.The image segmentation processing means 200 sets the image segmentation information corresponding to the number of parallel
이후, 영상분석처리수단(100)으로 대용량 영상이 입력되면(ST2), 영상분석처리수단(100)은 입력된 대용량 영상에 대한 공간 영역정보를 포함하는 각종 좌표정보를 추출하고 입력된 대용량 영상과 함께 공간좌표정보를 영상분할처리수단(200)으로 제공한다.Then, when a large-capacity image is input to the image analysis processing means 100 (ST2), the image analysis processing means 100 extracts various coordinate information including spatial region information on the inputted large-capacity image, Together with the spatial coordinate information, to the image segmentation processing means 200.
상기 영상분할처리수단(200)은 공간좌표정보와 분할영역 좌표정보를 근거로 대용량 영상을 기 설정된 LOD 수에 대응되는 영역으로 분할하여 병렬처리 가능한 코어 프로세서로 각각 제공한다(ST3).The image
LOD처리수단(400)의 각 코어 프로세서(410)는 상기 영상분할처리수단(200)으로부터 제공되는 분할영상을 근거로 LOD 영상을 생성한다(ST4). 이때, 상기 병렬 처리 가능한 다수의 코어 프로세서(410)는 서로 다른 전역변수를 이용하여 해당 분할영상에 대한 LOD 영상을 독립적으로 생성한다. Each
이어, 각 코어 프로세서(410)는 각각 독립적으로 생성된 LOD 영상을 데이터메모리(420)의 기 설정된 영역에 각각 저장한다(ST5). 이때, 각 코어 프로세서(410)는 LOD 영상을 현재 해상도 레벨에 대응되는 기 설정된 타일수에 대응되도록 분할하여 데이터메모리(420)에 저장한다. 또한, 상기 각 코어 프로세서(410)는 자신에게 할당된 LOD 영역의 다수 타일영상에 대한 위치에 대응되는 좌표값을 설정하고, 해당 좌표정보를 근거로 저장폴더명을 설정하여 해당 타일 영상을 설정된 저장폴더 내에 저장한다. Next, each
LOD처리수단(400)에서 다수 코어 프로세서(410)에서 병렬처리되어 생성된 LOD 영상이 데이터메모리(420)의 각 영역에 저장되면, 출력영상 생성수단(500)은 데이터메모리(420)에 저장된 각 영역의 타일 영상 즉, 이미지파일을 저장된 방법에 대응되는 방법으로 독출하여 결합시킴으로써 출력영상을 생성하여 출력하게 된다(ST6). 즉, 상기 출력영상 생성수단(500)은 사용자에 의해 설정된 해상도 레벨에 대응되는 각 LOD 영상을 구성하는 타일영상을 독출하여 해당 LOD 분할영역에 대응되는 위치에 배치되도록 결합하여 출력영상을 생성하게 된다.The
이때, 상기 실시예에 있어서는 하나의 해상도 레벨에 대한 LOD 생성방법을 설명하였으나, 둘 이상의 다중 해상도 레벨이 설정된 경우, 각 해상도 레벨에 대한 LOD 영상을 서로 다른 데이터메모리(420) 영역에 저장하여, 다중 해상도 레벨에 대한 출력영상을 제공할 수 있다. 이때, LOD 영상의 생성은 각 해상도 레벨별로 처리하도록 함으로써, 상위 레벨과 하위 레벨간의 영상 중첩 등의 에러발생을 방지하도록 구성된다. However, when two or more multiple resolution levels are set, the LOD images for the respective resolution levels may be stored in
한편, 도7은 도1에 도시된 LOD 영상 병렬처리장치에서 코어 프로세서 수에 따른 LOD 영상처리 실행시간을 측정한 도면이다.Meanwhile, FIG. 7 is a graph illustrating the execution time of the LOD image processing according to the number of core processors in the LOD image parallel processing apparatus shown in FIG.
도7에 도시된 바와 같이, 동일한 대용량 영상을 LOD 영상처리하는 실행 시간을 측정한 결과, 코어 프로세서의 수가 1개인 경우에는 약 700초, 2개인 경우에는 약 400초, 4개인 경우에는 약 320초, 8개인 경우에는 약 290초로서, 단일 코어 프로세서를 이용하여 LOD 영상처리를 수행하는 시간에 비해 4개의 코어 프로세서를 이용하여 병렬처리 방식으로 LOD 영상을 처리하는 경우 2배 이상의 시간이 절감되는 것을 알 수 있다. 이때, 상기 실행 시간은 대용량 영상의 좌표를 분석하고, 대용량 영상의 영역을 분할하는 등을 포함하는 순차처리시간과, 코어 프로세서 수에 따른 LOD 처리시간을 합산하여 측정된 시간이다. As shown in FIG. 7, when the execution time of the LOD image processing of the same large capacity image is measured, it is about 700 seconds when the number of core processors is 1, about 400 seconds when the number of core processors is 2, , And about 290 seconds in the case of 8, the time required to process the LOD image by the parallel processing method using four core processors is twice or more than that of the LOD image processing using the single core processor Able to know. At this time, the execution time is a time measured by adding the sequential processing time including the division of the area of the large capacity image, and the LOD processing time according to the number of core processors, by analyzing the coordinates of the large capacity image.
즉, 상기 실시예에 의하면 멀티 코어 프로세서를 구비한 단말에서 대용량 영상을 처리함에 있어서, 대용량 영상을 다수의 코어 프로세서에 대응되는 영역으로 분할하고, 해당 분할영역에 대해 각 코어 프로세서에서 병렬방식으로 LOD영상을 생성하도록 함으로써, 단말에 구비된 자원의 효율적인 이용을 통해 보다 빠른 고속의 LOD영상 생성처리가 가능하게 된다. That is, according to the embodiment, in processing a large capacity image in a terminal equipped with a multicore processor, a large capacity image is divided into regions corresponding to a plurality of core processors, and LOD The LOD image generation process can be performed faster and faster by efficiently using the resources provided in the terminal.
또한, 본 발명에 있어서는 상기 다수의 코어 프로세서를 통해 병렬처리함에 있어 각 코어 프로세서에 전역변수를 설정하여 LOD영상을 처리하도록 함으로써, 각 코어 프로세서간 간섭이 발생하지 않게 된다.In the present invention, when parallel processing is performed through the plurality of core processors, global variables are set in each core processor to process the LOD image, so that no interference occurs between the core processors.
비록, 본 발명이 상기 언급된 바람직한 실시예와 관련하여 설명되어졌지만, 발명의 요지와 범위로부터 벗어남이 없이 다양한 수정이나 변형을 하는 것이 가능하다. 따라서 첨부된 특허등록청구의 범위는 본 발명의 요지에서 속하는 이러한 수정이나 변형을 포함할 것이다.Although the present invention has been described in connection with the above-mentioned preferred embodiments, it is possible to make various modifications and variations without departing from the spirit and scope of the invention. Accordingly, the scope of the appended claims should include all such modifications and changes as fall within the scope of the present invention.
100 : 영상분석처리수단, 200 : 영상분할처리수단,
300 : 환경설정수단, 400 : LOD 처리수단,
500 : 출력영상 생성수단, 310 : 해상도 레벨 설정블럭,
320 : 병렬처리 설정블럭, 330 : LOD환경 설정블럭,
410 : 코어 프로세서, 420 : 데이터메모리.100: image analysis processing means, 200: image division processing means,
300: environment setting means, 400: LOD processing means,
500: output image generating means, 310: resolution level setting block,
320: parallel processing setting block, 330: LOD configuration block,
410: core processor, 420: data memory.
Claims (8)
대용량 영상을 다수의 영역으로 분할하고 각 분할 영역에 대한 영상을 다수의 코어 프로세서로 병렬형태로 각각 출력하는 제1 단계와,
상기 다수의 코어 프로세서는 상기 제1 단계에서 제공되는 분할영상을 기 설정된 크기의 다수의 타일영상으로 구성되는 LOD 영상으로 변환하는 제2 단계,
상기 각 코어 프로세서는 해당 코어 프로세서에서 생성된 LOD영상을 데이터메모리의 기 설정된 영역에 저장하는 제3 단계 및,
상기 데이터메모리에 저장된 LOD 영상을 결합하여 출력영상을 생성하는 제4 단계를 포함하여 구성되되,
상기 제 1단계에서 상기 병렬 처리 가능한 다수의 코어 프로세서는 단말에 구비된 코어 프로세서의 수보다 같거나 적게 설정되고, 대용량 영상의 분할영역은 병렬 처리 가능한 코어 프로세서의 수와 동일하거나 많게 설정되는 것을 특징으로 하는 LOD 영상 병렬처리방법.A method for parallel processing an LOD image in a terminal configured to have a multicore processor and process a large capacity image,
A first step of dividing a large capacity image into a plurality of areas and outputting images for each of the divided areas in parallel form to a plurality of core processors,
The plurality of core processors may include a second step of converting the divided image provided in the first step into an LOD image composed of a plurality of tile images of a predetermined size,
Each of the core processors storing a LOD image generated by the core processor in a predetermined area of the data memory,
And a fourth step of combining the LOD images stored in the data memory to generate an output image,
In the first step, the plurality of core processors capable of parallel processing are set to be equal to or less than the number of core processors provided in the terminal, and the divided area of the large capacity image is set to be equal to or larger than the number of core processors capable of parallel processing To-parallel processing method.
상기 제2 단계에서 병렬 처리 가능한 각 코어 프로세서는 기 설정된 전역변수를 이용하여 LOD 생성처리를 수행하는 것을 특징으로 하는 LOD 영상 병렬처리방법.6. The method of claim 5,
Wherein each core processor capable of parallel processing in the second step performs an LOD generation process using a predetermined global variable.
상기 제3 단계에서 병렬 처리 가능한 각 코어 프로세서는 자신에게 할당된 LOD 영역의 다수 타일영상에 대한 위치에 대응되는 좌표값을 설정하고, 해당 좌표값을 근거로 저장폴더명을 설정하여 좌표값에 대응되는 타일영상을 해당 저장폴더내에 저장하는 것을 특징으로 하는 LOD 영상 병렬처리방법.6. The method of claim 5,
Each of the core processors capable of parallel processing in the third step sets a coordinate value corresponding to a position of a multi-tile image of an LOD area allocated to the core processor, sets a storage folder name based on the coordinate value, And the tile image is stored in the corresponding storage folder.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140073355A KR101487454B1 (en) | 2014-06-17 | 2014-06-17 | method for parallel processing of LOD image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140073355A KR101487454B1 (en) | 2014-06-17 | 2014-06-17 | method for parallel processing of LOD image |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101487454B1 true KR101487454B1 (en) | 2015-01-28 |
Family
ID=52592779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140073355A KR101487454B1 (en) | 2014-06-17 | 2014-06-17 | method for parallel processing of LOD image |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101487454B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101769020B1 (en) * | 2017-03-22 | 2017-08-18 | (주)이지스 | Method for generating of lod service data by modelling steps based parallel processing on building modelling data |
KR101987076B1 (en) * | 2018-11-12 | 2019-06-10 | 한화시스템(주) | Apparatus and method for processing real-time parallel data |
KR102061835B1 (en) | 2019-07-30 | 2020-01-02 | (주)한국해저정보 | How to implement LOD in non-square Grid data with NaN |
KR20200054834A (en) * | 2019-02-20 | 2020-05-20 | 한화시스템 주식회사 | Apparatus and method for processing real-time parallel data |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004013510A (en) * | 2002-06-06 | 2004-01-15 | Sony Computer Entertainment Inc | Plotting processing program, storage medium having the same stored thereon, plotting processing apparatus and method therefor |
KR20130111579A (en) * | 2010-11-12 | 2013-10-10 | 퀄컴 인코포레이티드 | Parallel image processing using multiple processors |
-
2014
- 2014-06-17 KR KR1020140073355A patent/KR101487454B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004013510A (en) * | 2002-06-06 | 2004-01-15 | Sony Computer Entertainment Inc | Plotting processing program, storage medium having the same stored thereon, plotting processing apparatus and method therefor |
KR20130111579A (en) * | 2010-11-12 | 2013-10-10 | 퀄컴 인코포레이티드 | Parallel image processing using multiple processors |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101769020B1 (en) * | 2017-03-22 | 2017-08-18 | (주)이지스 | Method for generating of lod service data by modelling steps based parallel processing on building modelling data |
KR101987076B1 (en) * | 2018-11-12 | 2019-06-10 | 한화시스템(주) | Apparatus and method for processing real-time parallel data |
KR20200054834A (en) * | 2019-02-20 | 2020-05-20 | 한화시스템 주식회사 | Apparatus and method for processing real-time parallel data |
KR102230669B1 (en) * | 2019-02-20 | 2021-03-22 | 한화시스템(주) | Apparatus and method for processing real-time parallel data |
KR102061835B1 (en) | 2019-07-30 | 2020-01-02 | (주)한국해저정보 | How to implement LOD in non-square Grid data with NaN |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110347769B (en) | Processing method, device, equipment and storage medium for multi-level map tiles | |
CN110706341B (en) | High-performance rendering method and device of city information model and storage medium | |
Favalli et al. | Multiview 3D reconstruction in geosciences | |
US9460175B1 (en) | Server implemented geographic information system with graphical interface | |
KR100956416B1 (en) | 3 dimensional geographical information client apparatus, server apparatus and 3 dimensional geographical information system having the same | |
CN110969691B (en) | WebGL-based photographic data scheduling method and system | |
CN105574102B (en) | A kind of method and device of electronic map data load | |
US8520940B1 (en) | Automatic city block segmentation in aerial imagery for parallel processing | |
KR101487454B1 (en) | method for parallel processing of LOD image | |
Liang et al. | Embedding user-generated content into oblique airborne photogrammetry-based 3D city model | |
CN106777302B (en) | Method and device for converting space geographic coordinates | |
Lorenz et al. | 3D feature surface properties and their application in geovisualization | |
CN112113544B (en) | Remote sensing data processing method and system based on unmanned aerial vehicle image | |
CN114663324A (en) | Fusion display method of BIM (building information modeling) model and GIS (geographic information system) information and related components | |
Li et al. | GeoDa web: enhancing web-based mapping with spatial analytics | |
US20180039715A1 (en) | System and method for facilitating an inspection process | |
CN113989454B (en) | Fusion method, device and system suitable for geological data and geographic information data | |
CN111881230A (en) | Rendering method and device for map area and electronic equipment | |
CN112700547A (en) | Map making method and related equipment | |
US10460427B2 (en) | Converting imagery and charts to polar projection | |
KR101293770B1 (en) | apparatus for outputting data and method thereof | |
She et al. | A building label placement method for 3D visualizations based on candidate label evaluation and selection | |
CN110610544A (en) | Drilling data thinning method and device, equipment and storage medium | |
KR101632070B1 (en) | Earth surface image generation apparatus for simulation and the image storage method thereof | |
CN106033451B (en) | A kind of instant rendering method of the density map of cellular traffic and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20171228 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190226 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20200217 Year of fee payment: 6 |