KR102546070B1 - Method for removing noise from time lapse video - Google Patents
Method for removing noise from time lapse video Download PDFInfo
- Publication number
- KR102546070B1 KR102546070B1 KR1020210072432A KR20210072432A KR102546070B1 KR 102546070 B1 KR102546070 B1 KR 102546070B1 KR 1020210072432 A KR1020210072432 A KR 1020210072432A KR 20210072432 A KR20210072432 A KR 20210072432A KR 102546070 B1 KR102546070 B1 KR 102546070B1
- Authority
- KR
- South Korea
- Prior art keywords
- codeword
- pixel
- factor
- noise
- pixels
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000010586 diagram Methods 0.000 description 5
- 241000238631 Hexapoda Species 0.000 description 4
- 235000006679 Mentha X verticillata Nutrition 0.000 description 3
- 235000002899 Mentha suaveolens Nutrition 0.000 description 3
- 235000001636 Mentha x rotundifolia Nutrition 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 101100129500 Caenorhabditis elegans max-2 gene Proteins 0.000 description 1
- 101100083446 Danio rerio plekhh1 gene Proteins 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000012010 growth Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000008635 plant growth Effects 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G06T5/002—
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
본 발명은 타임 랩스 영상의 노이즈 제거 방법에 관한 것이다.
본 발명의 일례에 따른 타임 랩스 영상의 노이즈 제거 방법은 영상에 포함된 각 이미지 프레임의 위치별로 시계열적으로 나열되는 복수의 픽셀들에 대해 적어도 하나의 코드워드를 포함하는 코드북을 생성하는 단계, 상기 적어도 하나의 코드워드 중 연속성 인자를 연산하여 상기 코드북을 수정하는 단계, 상기 연속성 인자를 이용하여 상기 각 이미지 프레임에 포함된 상기 복수의 픽셀들 중에서 노이즈 픽셀을 추출하는 단계, 상기 각 이미지 프레임에 포함된 상기 복수의 픽셀들에 대해 미리 설정된 임계값 이하로 동일한 컬러를 갖는 픽셀들에 대해 그룹화하여 슈퍼 픽셀을 생성하는 단계 및 상기 슈퍼 픽셀에서 상기 노이즈 픽셀이 차지하는 비율이 미리 설정된 임계값 이상인 경우 상기 슈퍼 픽셀을 노이즈 영역으로 결정하는 단계를 포함한다.The present invention relates to a method for removing noise from a time-lapse video.
A method for denoising a time-lapse image according to an example of the present invention includes the steps of generating a codebook including at least one codeword for a plurality of pixels arranged in time-series by position of each image frame included in the image; Correcting the codebook by calculating a continuity factor among at least one codeword, extracting a noise pixel from among the plurality of pixels included in each image frame by using the continuity factor, and including it in each image frame. Generating a super pixel by grouping pixels having the same color of the plurality of pixels having a predetermined threshold value or less, and when a ratio occupied by the noise pixel in the super pixel is equal to or greater than a predetermined threshold value, the super pixel is generated. and determining the pixel as a noise region.
Description
본 발명은 타임 랩스 영상의 노이즈 제거 방법에 관한 것으로, 보다 상세하게는 미리 설정된 시간 간격으로 촬영된 타임 랩스 영상에서 코드북 방법과 슈퍼 픽셀 생성 방법을 이용하여 노이즈를 제거하는 방법에 관한 것이다.The present invention relates to a method for removing noise from a time-lapse image, and more particularly, to a method for removing noise from a time-lapse image captured at preset time intervals using a codebook method and a super pixel generation method.
긴 시간 간격을 두고 촬영된 이미지 리스트를 모아서 짧은 시간 내로 축약하여 재생하는 영상을 타임랩스(Time-lapse) 영상이라고 한다. 타임랩스 영상을 만드는 방법은 크게 두 가지로 나눠볼 수 있다. A time-lapse video is a video that collects a list of images photographed at a long time interval, reduces them into a short time, and plays them back. There are two main ways to create a time-lapse video.
첫 번째 방법은 기존의 영상을 재생 속도가 빨라지도록 편집하는 방법이고, 두 번째 방법은 정지 영상 카메라로 동일한 피사체를 긴 시간 간격으로 촬영한 후 촬영된 영상을 합치는 방식이다. 촬영 목적이 타입랩스 영상을 만드는 것이라면 대부분 두 번째 방법을 사용한다. The first method is a method of editing an existing video to increase the playback speed, and the second method is a method of combining the captured images after photographing the same subject at a long time interval with a still image camera. If the purpose of shooting is to create a time-lapse video, most people use the second method.
타임랩스 영상은 긴 시간동안의 변화를 짧은 시간에 보여줄 수 있는 장점이 있기 때문에 다양한 응용에 사용되고 있다. Time-lapse video has the advantage of being able to show changes over a long period of time in a short period of time, so it is used in a variety of applications.
한 예로 식물의 성장을 보여주는 교육용 콘텐츠 제작이 있다. 초등학교 3, 4학년 과학 과목에 있는 ‘식물 한 살이’ 단원의 경우 학생들이 직접 식물을 기르며 한 살이 과정을 관찰하는 것을 통해 식물도 일생이 있음을 학습하도록 설정되어 있다. One example is the creation of educational content that shows the growth of plants. In the case of the ‘Life Cycle of a Plant’ unit in the 3rd and 4th grade science subjects of elementary school, students grow plants and observe the life cycle process to learn that plants have a lifetime.
식물의 성장 과정을 정해진 앵글에서 지속적으로 촬영하여 영상을 모으면 타임랩스 영상을 만들 수 있고, 이렇게 만들어진 타임랩스 영상은 식물의 성장 과정을 요약적으로 보여줄 수 있어 교육적 효과가 크다 할 수 있다. A time-lapse video can be created by continuously filming the growth process of a plant from a fixed angle and collecting the videos.
물리 실험의 경우에도 긴 시간이 필요한 실험의 경우 타임랩스 영상을 이용하면 학생들에게 효과적으로 실험의 내용을 전달할 수 있는 콘텐츠를 만들 수 있다. Even in the case of physics experiments, in the case of experiments that require a long time, time-lapse video can be used to create content that can effectively convey the contents of the experiment to students.
또 다른 예로 관광에 적용할 수 있다. 사계절의 경치가 다른 관광지에 찾아온 관광객에게 짧은 시간 안에 특정 지역의 변화 모습을 보여주는 것은 관광객에게 그 지역의 생태 정보를 효과적으로 전달할 수 있다.Another example can be applied to tourism. Showing the changes of a specific area in a short period of time to tourists visiting other tourist destinations with the scenery of the four seasons can effectively convey the ecological information of the area to tourists.
이와 같은 타임랩스 영상의 품질을 개선하기 위한 연구들도 진행되고 있다. 특히 충분하지 않은 수의 타임랩스 영상을 사용하여 노이즈 화소를 배경으로부터 분리할 때 배경을 통계적 모델로 표현하기가 어려운 문제점이 있다.Studies to improve the quality of such time-lapse images are also being conducted. In particular, when noise pixels are separated from the background using an insufficient number of time-lapse images, it is difficult to express the background as a statistical model.
종래의 타임랩스 영상에서 원하지 않는 노이즈 화소를 제거하는 방법으로는 GMM (Gaussian Mixture Model) 방법과 복수 개의 픽셀 값을 양자화하여 배경을 모델링하는 코드북 방법이 사용되었다.A Gaussian Mixture Model (GMM) method and a codebook method for modeling a background by quantizing a plurality of pixel values have been used as a method of removing unwanted noise pixels from a conventional time-lapse image.
그러나, GMM 방법과 코드워드 방법은 모두 배경 모델링에 많이 사용되지만 기본적으로 충분한 영상을 이용하여 학습하는 단계가 필요하다는 문제점이 있었으며, 주어진 영상이 충분하지 않은 경우, 배경으로부터 노이즈를 제거하는데 한계가 있었다. However, both the GMM method and the codeword method are widely used for background modeling, but basically have a problem in that a step of learning using sufficient images is required, and there is a limit to removing noise from the background when the given image is not sufficient. .
본 발명이 해결하려는 과제는, 본 발명은 타임 랩스 영상의 노이즈 제거 방법에 관한 것으로, 보다 상세하게는 미리 설정된 시간 간격으로 촬영된 타임 랩스 영상에서 코드북 방법과 슈퍼 픽셀 생성 방법을 이용하여 노이즈를 제거하는 방법에 관한 것이다.The problem to be solved by the present invention relates to a method for removing noise from a time-lapse image, and more particularly, removes noise from a time-lapse image captured at a preset time interval using a codebook method and a method for generating a super pixel. It's about how to do it.
본 발명의 일례에 따른 타임 랩스 영상의 노이즈 제거 방법은 미리 설정된 시간 간격으로 촬영된 영상에 포함된 각 이미지 프레임의 위치별로 시계열적으로 나열되는 복수의 픽셀들에 대해 적어도 하나의 코드워드를 포함하는 코드북을 생성하는 단계, 상기 적어도 하나의 코드워드 중 동일한 코드워드가 시계열적으로 연속되는 픽셀의 최대 개수를 나타내는 연속성 인자를 연산하여 상기 코드북을 수정하는 단계, 상기 연속성 인자를 이용하여 상기 각 이미지 프레임에 포함된 상기 복수의 픽셀들 중에서 노이즈 픽셀을 추출하는 단계, 상기 각 이미지 프레임에 포함된 상기 복수의 픽셀들에 대해 미리 설정된 임계값 이하로 동일한 컬러를 갖는 픽셀들에 대해 그룹화하여 슈퍼 픽셀을 생성하는 단계 및 상기 슈퍼 픽셀에서 상기 노이즈 픽셀이 차지하는 비율이 미리 설정된 임계값 이상인 경우 상기 슈퍼 픽셀을 노이즈 영역으로 결정하는 단계를 포함한다.A method for denoising a time-lapse image according to an example of the present invention includes at least one codeword for a plurality of pixels arranged in time-sequential order by position of each image frame included in an image captured at a preset time interval. Generating a codebook, correcting the codebook by calculating a continuity factor representing the maximum number of pixels in which the same codeword among the at least one codeword is time-sequentially consecutive, and modifying the codebook by using the continuity factor. extracting a noise pixel from among the plurality of pixels included in each image frame, generating a super pixel by grouping pixels having the same color below a preset threshold for the plurality of pixels included in each image frame. and determining the super pixel as a noise region when a ratio occupied by the noise pixel in the super pixel is equal to or greater than a preset threshold.
상기 적어도 하나의 코드워드 각각은 각 픽셀에 포함된 적어도 한 컬러 성분에 대한 최소값과 최대값을 나타내는 컬러 인자, 동일한 코드워드를 구성하는 픽셀의 개수를 나타내는 픽셀수 인자 및 상기 연속성 인자를 포함할 수 있다.Each of the at least one codeword may include a color factor representing minimum and maximum values of at least one color component included in each pixel, a pixel number factor representing the number of pixels constituting the same codeword, and the continuity factor. there is.
상기 코드북을 생성하는 단계에서, 상기 코드북은 상기 각 이미지 프레임의 각 위치별로 생성되되, 상기 적어도 하나의 코드워드는 상기 각 이미지 프레임의 동일한 위치에서 시계열적으로 나열된 픽셀들에 대한 정보가 그룹화되어 저장될 수 있다.In the step of generating the codebook, the codebook is generated for each position of each image frame, and the at least one codeword is stored as a group of information about pixels arranged time-sequentially at the same position of each image frame. It can be.
상기 코드북을 생성하는 단계에서 생성되는 상기 적어도 하나의 코드워드에는 상기 연속성 인자를 제외한 상기 컬러 인자 및 상기 픽셀수 인자가 생성될 수 있다.The color factor and the pixel number factor excluding the continuity factor may be generated in the at least one codeword generated in the step of generating the codebook.
상기 코드북을 생성하는 단계는 시계열적으로 나열된 상기 각 이미지 프레임 중 첫 번째 프레임의 각 위치별로 첫 번째 픽셀의 컬러값을 기초로 코드워드를 생성한 후, 상기 첫 번째 이후의 모든 픽셀 중 어느 하나인 현재 픽셀의 컬러값이 기생성된 제1 코드워드에 대응되는 경우 상기 현재 픽셀의 컬러값을 상기 기생성된 제1 코드워드에 업데이트하거나, 상기 현재 픽셀의 컬러값이 상기 제1 코드워드 이외의 다른 제2 코드워드에 대응되는 경우 상기 제1, 2 코드워드를 병합하거나, 상기 현재 픽셀의 컬러값과 대응되는 기생성된 코드워드가 없는 경우 새로운 코드워드를 추가할 수 있다.In the generating of the codebook, a codeword is generated based on the color value of the first pixel for each position of the first frame among the image frames listed in time series, and then any one of all pixels after the first If the color value of the current pixel corresponds to the pre-generated first codeword, the color value of the current pixel is updated to the pre-generated first codeword, or the color value of the current pixel is different from the first codeword. The first and second codewords may be merged when they correspond to different second codewords, or a new codeword may be added when there is no pre-generated codeword corresponding to the color value of the current pixel.
상기 현재 픽셀의 컬러값이 상기 제1 코드워드의 상기 컬러 인자의 임계값 범위 내에 포함되는 경우, 상기 현재 픽셀이 상기 제1 코드워드에 대응되는 것으로 판단하여, 상기 현재 픽셀의 컬러값을 상기 제1 코드워드의 상기 컬러 인자에 반영하고 상기 제1 코드워드의 상기 픽셀수 인자를 증가시켜 상기 제1 코드워드를 업데이트할 수 있다.When the color value of the current pixel is within the threshold value range of the color factor of the first codeword, it is determined that the current pixel corresponds to the first codeword, and the color value of the current pixel is set to the first codeword. The first codeword may be updated by reflecting the color factor of 1 codeword and increasing the number of pixels factor of the first codeword.
상기 현재 픽셀이 상기 제1, 2 코드워드에 대응되는 경우, 상기 제1, 2 코드워드 중 어느 하나의 코드워드로 병합하되, 나머지 하나의 코드워드는 무효화시키고, 상기 나머지 하나의 코드워드에 포함된 컬러 인자값을 상기 어느 하나의 코드워드에 반영할 수 있다.When the current pixel corresponds to the first and second codewords, the current pixel is merged into any one of the first and second codewords, but the other codeword is invalidated and included in the other codeword. The color factor value can be reflected in any one of the above codewords.
상기 코드북을 생성하는 단계에서 생성되는 상기 적어도 하나의 코드워드는 복수 개이고, 상기 코드북을 수정하는 단계에서, 현재 픽셀의 코드워드가 이전 픽셀에 대한 이전 코드워드와 매칭되면, 동일한 코드워드가 연속되는 속성으로 정의되는 현재의 인접 길이를 증가시키고, 상기 현재의 인접 길이가 상기 이전 코드워드의 연속성 인자보다 큰 경우, 상기 이전 코드워드의 상기 연속성 인자를 상기 현재의 인접 길이로 갱신할 수 있다.The at least one codeword generated in the step of generating the codebook is plural, and in the step of modifying the codebook, if the codeword of the current pixel matches the previous codeword for the previous pixel, the same codeword is consecutive. A current contiguous length defined as an attribute is increased, and when the current contiguous length is greater than a continuity factor of the previous codeword, the continuity factor of the previous codeword may be updated to the current contiguous length.
상기 노이즈 픽셀을 추출하는 단계에서는 현재 픽셀에 대한 코드워드의 상기 픽셀수 인자 및 상기 연속성 인자가 미리 설정된 임계값 이하인 경우 상기 현재 픽셀을 노이즈로 추출할 수 있다.In the step of extracting the noise pixel, the current pixel may be extracted as noise when the pixel number factor and the continuity factor of the codeword for the current pixel are equal to or less than a predetermined threshold value.
상기 노이즈 픽셀을 추출하는 단계에서는 현재 픽셀에 대한 상기 코드워드의 상기 픽셀수 인자가 미리 설정된 상기 픽셀수 인자에 대한 최소 임계값 이하인 경우, 상기 현재 픽셀을 노이즈로 검출하고, 상기 현재 픽셀에 대한 상기 코드워드의 상기 픽셀수 인자가 미리 설정된 상기 픽셀수 인자에 최대 임계값보다 큰 경우, 상기 현재 픽셀을 배경으로 분류하고, 배경으로 분류된 상기 현재 픽셀에 대한 상기 코드워드의 상기 연속성 인자가 미리 설정된 연속성 인자에 대한 임계값보다 작은 경우 노이즈로 검출하고, 상기 연속성 인자에 대한 임계값보다 큰 경우 배경으로 검출할 수 있다.In the step of extracting the noise pixels, when the pixel number factor of the codeword for the current pixel is less than or equal to a preset minimum threshold value for the pixel number factor, the current pixel is detected as noise, and the number of pixels for the current pixel is detected. If the number of pixels factor of the codeword is greater than the preset maximum threshold for the number of pixels factor, the current pixel is classified as a background, and the continuity factor of the codeword for the current pixel classified as a background is set to the preset number of pixels factor. If it is less than the threshold for the continuity factor, it may be detected as noise, and if it is greater than the threshold for the continuity factor, it may be detected as the background.
상기 노이즈 영역으로 결정하는 단계 이후, 상기 노이즈 영역으로 결정된 슈퍼 픽셀은 시계열적으로 인접한 이미지 프레임의 동일한 부분에 위치하는 슈퍼 픽셀의 컬러로 대체하는 단계를 더 포함할 수 있다.After determining the noise area, the method may further include replacing the superpixel determined as the noise area with a color of a superpixel located in the same part of a time-sequentially adjacent image frame.
상기 노이즈 영역을 인페인팅하는 단계에서, 상기 시계열적으로 인접한 이미지 프레임의 동일한 부분에 위치하는 슈퍼 픽셀은 배경 영역으로 결정된 슈퍼 픽셀일 수 있다.In the step of inpainting the noise area, super pixels located in the same part of the time-sequentially adjacent image frames may be super pixels determined as the background area.
본 발명은 타임 랩스 영상에 대해 코드북 방법을 적용하되, 새로운 구성 인자를 갖는 코드워드를 생성하고, 생성된 코드워드의 픽셀수 인자와 연속성 인자를 이용하여 시계열적으로 나열된 복수의 픽셀로부터 노이즈 픽셀을 검출함으로써, 상대적으로 작은 이미지 프레임을 갖는 타임 랩스 영상에서도 효율적으로 노이즈를 제거할 수 있다.The present invention applies a codebook method to a time-lapse image, generates a codeword having a new configuration factor, and generates noise pixels from a plurality of pixels arranged in time series using a pixel number factor and a continuity factor of the generated codeword. By detecting it, it is possible to efficiently remove noise even in a time-lapse image having a relatively small image frame.
도 1는 본 발명의 일실시예에 따라 타임 랩스 영상에서 노이즈를 제거하는 노이즈 제거 시스템의 일례를 설명하기 위한 도이다.
도 2은 본 발명의 일실시예에 따라 타임 랩스 영상에서 노이즈를 제거하는 방법의 일례를 설명하기 위한 플로우 차트이다.
도 3은 타임 랩스 영상의 위치별로 픽셀에 대한 코드워드의 개념을 설명하기 위한 도이다.
도 4는 도 2에서 코드북을 생성하는 방법의 일례를 설명하기 위한 플로우 차트이다.
도 5은 도 4에 도시된 플로우 차트에 따라 코드북을 생성하는 알고리즘의 일례이다.
도 6의 (a)는 도 5에서 새로운 코드워드를 작성하는 알고리즘의 일례이고, 도 6의 (b)는 도 5에서 기생성된 코드워드를 업데이트하는 알고리즘의 일례이다.
도 7은 도 5에서 기생성된 코드워드를 병합하는 알고리즘의 일례이다.
도 8은 도 2에서 코드북을 수정하여 연속성 인자를 산출하는 알고리즘의 일례이다.
도 9는 도 2에서 노이즈 픽셀을 추출하는 방법의 일례를 설명하기 위한 도이다.
도 10은 도 9에 따라 노이즈 픽셀을 추출하는 알고리즘의 일례이다.
도 11은 노이즈 추출의 대상이 되는 타임 랩스 영상의 일례이다.
도 12는 도 11의 t11 이미지 프레임에서 추출되는 노이즈 픽셀의 일례를 도시한 것이다.
도 13의 (a)는 도 11의 t11 이미지 프레임에 대해 슈퍼 픽셀이 생성된 일례를 도시한 것이고, 도 13의 (b)는 도 13의 (a)에 도시된 복수의 슈퍼 픽셀 중 노이즈 영역으로 결정된 슈퍼 픽셀의 일례를 도시한 것이다.
도 14는 도 11의 t11 이미지 프레임에서 노이즈가 제거된 일례를 도시한 것이다.1 is a diagram for explaining an example of a noise removal system for removing noise from a time-lapse image according to an embodiment of the present invention.
2 is a flowchart for explaining an example of a method of removing noise from a time-lapse image according to an embodiment of the present invention.
3 is a diagram for explaining the concept of a codeword for a pixel for each position of a time-lapse video.
FIG. 4 is a flow chart for explaining an example of a method of generating a codebook in FIG. 2 .
FIG. 5 is an example of an algorithm for generating a codebook according to the flow chart shown in FIG. 4 .
6(a) is an example of an algorithm for creating a new codeword in FIG. 5, and (b) of FIG. 6 is an example of an algorithm for updating a pre-generated codeword in FIG.
FIG. 7 is an example of an algorithm for merging codewords previously generated in FIG. 5 .
8 is an example of an algorithm for calculating a continuity factor by modifying the codebook in FIG. 2 .
FIG. 9 is a diagram for explaining an example of a method of extracting a noise pixel in FIG. 2 .
FIG. 10 is an example of an algorithm for extracting noise pixels according to FIG. 9 .
11 is an example of a time-lapse video to be subjected to noise extraction.
FIG. 12 illustrates an example of noise pixels extracted from the t11 image frame of FIG. 11 .
13(a) shows an example in which super pixels are generated for the t11 image frame of FIG. 11, and FIG. 13(b) shows a noise area among a plurality of super pixels shown in FIG. An example of the determined super pixel is shown.
FIG. 14 illustrates an example in which noise is removed from the t11 image frame of FIG. 11 .
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, the embodiments disclosed in this specification will be described in detail with reference to the accompanying drawings, but the same or similar elements are given the same reference numerals regardless of reference numerals, and redundant description thereof will be omitted. In addition, in describing the embodiments disclosed in this specification, if it is determined that a detailed description of a related known technology may obscure the gist of the embodiment disclosed in this specification, the detailed description thereof will be omitted.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms including ordinal numbers, such as first and second, may be used to describe various components, but the components are not limited by the terms. These terms are only used for the purpose of distinguishing one component from another.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Singular expressions include plural expressions unless the context clearly dictates otherwise.
본 출원에서, 설명되는 각 단계들은 특별한 인과관계에 의해 나열된 순서에 따라 수행되어야 하는 경우를 제외하고, 나열된 순서와 상관없이 수행될 수 있다.In this application, each step described can be performed regardless of the listed order, except for the case where it must be performed in the listed order due to a special causal relationship.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this application, terms such as "comprise" or "have" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded.
이하, 첨부된 도면들을 참조하여 본 발명에 대해 설명한다.Hereinafter, the present invention will be described with reference to the accompanying drawings.
본 발명의 일실시예에 따른 타임 랩스 영상의 노이즈 제거 방법은 연관찰을 위해 긴 시간 간격으로 촬영된 영상을 이용한 타임랩스 영상에서 갑자기 나타나는 노이즈를 제거하는데 효과적일 수 있다.A method for removing noise in a time-lapse image according to an embodiment of the present invention may be effective in removing noise that suddenly appears in a time-lapse image using images captured at long time intervals for correlation observation.
일반적인 배경모델을 학습시키기에 충분하지 않은 영상이 주어졌을 때, 본 발명은 효과적으로 배경을 모델링하고, 코드북 방법을 기반으로 적은 수의 영상에 적용하기 위해, 코드워드의 기능을 새롭게 정의하였다.When an image that is not sufficient to train a general background model is given, the present invention newly defines the function of the codeword to effectively model the background and apply it to a small number of images based on the codebook method.
본 발명은 배경 영상으로부터 노이즈를 제거하기 위해 먼저 코드북을 생성하고, 생성된 코드북을 이용하여 노이즈 영역을 확정하여 제거한 후, 제거한 노이즈 영역은 시계열적으로 이웃 영상을 이용하여 채울 수 있다.In the present invention, in order to remove noise from a background image, a codebook is first generated, a noise region is determined and removed using the generated codebook, and then the removed noise region can be filled in time-sequentially using neighboring images.
도 1은 본 발명의 일실시예에 따라 타임 랩스 영상에서 노이즈를 제거하는 노이즈 제거 시스템의 일례를 설명하기 위한 도이다.1 is a diagram for explaining an example of a noise removal system for removing noise from a time-lapse image according to an embodiment of the present invention.
본 발명의 일례에 따른 노이즈 제거 시스템은 타임 랩스 영상에서 노이즈를 제거할 수 있다.A noise removal system according to an example of the present invention may remove noise from a time-lapse video.
노이즈 제거 시스템은 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 일례로, 노이즈 제거 시스템은 스마트폰(smart phone), 휴대폰, 태블릿 PC, 내비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player) 등을 포함할 수 있다.The noise canceling system may be a fixed terminal implemented as a computer device or a mobile terminal. As an example, the noise removal system may include a smart phone, a mobile phone, a tablet PC, a navigation device, a computer, a laptop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), and the like.
이와 같은 노이즈 제거 시스템은, 프로세서(100), 메모리(200), 입력부(300) 및 출력부(400)를 포함할 수 있다.Such a noise removal system may include a
프로세서(100)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(200)에 의해 프로세서(100)로 제공될 수 있다. 예를 들어 프로세서(100)는 메모리(200)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.The
일례로, 프로세서(100)는 사전에 실장된 프로그램에 따라 미리 설정된 시간 간격으로 촬영된 타임 랩스 영상을 대상으로 코드북을 생성하거나 수정할 수 있으며, 노이즈 픽셀을 추출하고 타임 랩스 영상의 각 이미지 프레임을 대상으로 슈퍼 픽셀을 생성하여 노이즈 영역을 결정한 후, 노이즈 영역을 배경 컬러로 인페인팅하는 기능을 수행할 수 있다.For example, the
메모리(200)는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있으며, 인터넷(internet)상에서 메모리(200)의 저장 기능을 수행하는 웹 스토리지(webstorage) 형태도 포함될 수 있다.The
또한, 메모리(200)에는 운영체제나 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(200)와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. Also, an operating system or at least one program code may be stored in the
이러한 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리(200) 카드 등의 컴퓨터에서 판독 가능한 기록 매체를 포함할 수 있다. The separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, and a
이와 같은 메모리(200)에는 사용자에 입력된 타임 랩스 영상이 저장될 수 있으며, 프로세서(100)에서 처리되는 코드북에 대한 정보, 노이즈 픽셀에 대한 정보, 슈퍼 픽셀에 대한 정보 등이 저장될 수 있다.In such a
입력부(300)는 키보드, 마우스, USB 입력 단자 등을 포함할 수 있으며, 출력부(400)는 영상이 표시되는 디스플레이 장치를 포함할 수 있다.The
도 2은 본 발명의 일실시예에 따라 타임 랩스 영상에서 노이즈를 제거하는 방법의 일례를 설명하기 위한 플로우 차트이고, 도 3은 타임 랩스 영상의 위치별로 픽셀에 대한 코드워드의 개념을 설명하기 위한 도이고, 도 4는 도 2에서 코드북을 생성하는 방법의 일례를 설명하기 위한 플로우 차트이고, 도 5은 도 4에 도시된 플로우 차트에 따라 코드북을 생성하는 알고리즘의 일례이다.2 is a flowchart for explaining an example of a method of removing noise from a time-lapse image according to an embodiment of the present invention, and FIG. 3 is a flow chart for explaining the concept of a codeword for each pixel for each location of a time-lapse image. 4 is a flow chart for explaining an example of a method for generating a codebook in FIG. 2, and FIG. 5 is an example of an algorithm for generating a codebook according to the flow chart shown in FIG.
도 2에 도시된 바와 같이, 본 발명의 일실시예에 따라 타임 랩스 영상에서 노이즈를 제거하는 방법은 코드북을 생성하는 단계(S100), 코드북을 수정하는 단계(S200), 노이즈 픽셀을 추출하는 단계(S300), 슈퍼 픽셀을 생성하는 단계(S400), 노이즈 영역으로 결정하는 단계(S500) 및 노이즈 영역을 인페인팅하는 단계(S600)를 포함할 수 있다.As shown in FIG. 2, a method for removing noise from a time-lapse image according to an embodiment of the present invention includes generating a codebook (S100), modifying the codebook (S200), and extracting noise pixels. (S300), generating a super pixel (S400), determining a noise area (S500), and inpainting the noise area (S600).
코드북을 생성하기 위해서, 먼저 외부에서 미리 설정된 시간 간격으로 촬영된 타임 랩스 영상을 입력받을 수 있다.In order to generate a codebook, first, a time-lapse image taken from the outside at a preset time interval may be input.
구체적으로, 타임 랩스 영상은 도 2의 (a)와 같이 미리 설정된 시간 간격(예를 들어, 5분, 10분, 1시간 등)으로 촬영된 이미지 프레임(IF1~IFN)의 집합일 수 있다. Specifically, the time-lapse video may be a set of image frames IF1 to IFN captured at preset time intervals (eg, 5 minutes, 10 minutes, 1 hour, etc.) as shown in (a) of FIG. 2 .
코드북을 생성하는 단계(S100)에서는 미리 설정된 시간 간격으로 촬영된 타임 랩스 영상에 포함된 각 이미지 프레임의 위치별로 시계열적으로 나열되는 복수의 픽셀들에 대해 적어도 하나의 코드워드를 포함하는 코드북이 생성될 수 있다.In the step of generating a codebook (S100), a codebook including at least one codeword is generated for a plurality of pixels arranged in time-series for each position of each image frame included in the time-lapse video captured at a preset time interval (S100). It can be.
여기서, 코드북은 타입 랩스 영상에서 각 이미지 프레임의 각 위치에서, 시계열적으로 나열되는 복수의 픽셀들에 대해 생성될 수 있다. Here, the codebook may be generated for a plurality of pixels arranged in time series at each position of each image frame in the type-lapse video.
예를 들어, 도 3의 (a)와 같이, 타임 랩스 영상이 N개의 이미지 프레임으로 구성되고, 각 이미지 프레임에서 세로의 픽셀수가 an개이고, 가로의 픽셀수가 bn개인 경우, 코드북(CB)은 각 위치(예, a1, b1)에서 t1 ~ tN까지 시계열적으로 나열되는 복수의 픽셀들에 대해 생성될 수 있다.For example, as shown in (a) of FIG. 3, when a time-lapse video is composed of N image frames, the number of vertical pixels is an, and the number of horizontal pixels is bn in each image frame, the codebook (CB) is each It may be generated for a plurality of pixels that are sequentially listed from positions (eg, a1 and b1) to t1 to tN.
각 위치별 코드북(CB)은 도 3의 (b)와 같이, 적어도 하나의 코드워드(C1, C2, Ci, CL)를 포함할 수 있다.The codebook (CB) for each position may include at least one codeword (C1, C2, Ci, CL) as shown in (b) of FIG.
코드북을 생성하는 단계(S100)에서 생성되는 코드북(CB)은 각 이미지 프레임의 각 위치별로 적어도 하나의 코드워드를 포함하여 생성될 수 있으며, 적어도 하나의 코드워드 각각은 각 이미지 프레임의 동일한 위치에서 시계열적으로 나열된 픽셀들에 대한 정보가 그룹화되어 저장될 수 있다. The codebook (CB) generated in the step of generating the codebook (S100) may be generated including at least one codeword for each position of each image frame, and each of the at least one codeword is at the same position of each image frame. Information on pixels listed in time series may be grouped and stored.
예를 들어, 도 3의 (b)와 같이, N개의 이미지 프레임 각각에서, 특정 위치(a1, b1)에는 시계열적으로 나열되는 N개의 픽셀들이 있을 수 있으며, 적어도 하나의 코드워드 각각(예, C1, C2, Ci, CL)은 N개의 픽셀들 중 임계 범위 내에서 동일한 컬러를 가지는 픽셀들에 대한 정보가 그룹화되어 저장될 수 있다.For example, as shown in (b) of FIG. 3, in each of the N image frames, there may be N pixels arranged in time series at specific positions (a1, b1), and each of at least one codeword (eg, C1, C2, Ci, CL) may store information about pixels having the same color within a threshold range among N pixels by grouping them.
도 3의 (b)에서는 코드북(CB)이 각 이미지 프레임의 (a1, b1) 위치에서 생성된 경우를 일례로 도시하였지만, 코드북은 각 이미지 프레임의 전체 위치별로 생성될 수 있다.In (b) of FIG. 3, the case in which the codebook (CB) is generated at the position (a1, b1) of each image frame is shown as an example, but the codebook may be generated for each position of each image frame.
N개의 이미지 프레임의 타임 랩스 영상이 주어질 때, 각 위치별로 구성되는 복수의 픽셀()은 다음의 수학식 1과 같을 수 있으며, 복수의 픽셀 각각은 수학식 2와 같이, 적어도 하나의 컬러값을 가질 수 있다.When a time-lapse image of N image frames is given, a plurality of pixels configured for each position ( ) may be the same as
여기서, Xi는 i번째 영상의 픽셀을 나타내고 xj는 세 개의 컬러 성분 중 j번째 컬러 성분을 나타낸다. 여기서, 세 개의 컬러 성분은 제1 컬러(x1), 제2 컬러(x2) 및 제3 컬러(x3)를 포함할 수 있으며, 예를 들어, 세 개의 컬러 성분은 각각 레드(R), 그린(G), 블루(B)를 포함할 수 있으나, 본 발명이 이에 한정되는 것은 아니다.Here, Xi denotes a pixel of the i-th image and xj denotes a j-th color component among three color components. Here, the three color components may include the first color (x1), the second color (x2), and the third color (x3), and for example, the three color components are red (R) and green ( G) and blue (B), but the present invention is not limited thereto.
이와 같은 각 픽셀 집합()은 적어도 하나의 코드워드(예를 들어, L개)로 구성된 코드북 C로 모델링될 수 있으며, 일례로, 다음의 수학식 3과 같이 표현될 수 있다.Each set of pixels like this ( ) may be modeled as a codebook C composed of at least one codeword (eg, L), and may be expressed as, for example,
적어도 하나의 코드워드 각각은 각 픽셀에 포함된 적어도 한 컬러 성분에 대한 최소값(min1, min2, min3)과 최대값(max1, max2, max3)을 나타내는 컬러 인자, 동일한 코드워드를 구성하는 픽셀의 개수를 나타내는 픽셀수 인자(M) 및 시계열적으로 연속되는 픽셀의 최대 개수를 나타내는 연속성 인자(G)를 포함할 수 있으며, 일례로, 다음의 수학식 4와 같이 표현될 수 있다.Each of the at least one codeword is a color factor representing minimum values (min1, min2, min3) and maximum values (max1, max2, max3) of at least one color component included in each pixel, and the number of pixels constituting the same codeword. and a continuity factor (G) representing the maximum number of consecutive pixels in time series.
수학식 4에서, Ci는 코드북을 구성하는 복수의 코드워드 중 i 번째 코드워드를 의미한다. 각 코드워드는 8개의 속성으로 구성될 수 있으며, min j와 max j는 각각 컬러 성분 중 j번째 컬러 성분의 최소값과 최대값을 나타내는 컬러 인자일 수 있다. 수학식 4와 같은 경우, 각 코드워드는 3개의 컬러 성분에 대한 최대값과 최소값을 포함할 수 있다.In
M은 동일한 코드워드를 구성하는 픽셀의 개수를 나타내는 픽셀수 인자(M)일 수 있으며, G는 동일한 코드워드에 해당되는 픽셀 중 시계열적으로 연속되는 픽셀의 최대 개수를 나타내는 연속성 인자(G)일 수 있다.M may be a pixel count factor (M) representing the number of pixels constituting the same codeword, and G may be a continuity factor (G) representing the maximum number of pixels that are consecutive in time series among pixels corresponding to the same codeword. can
종래의 코드북 방법에서 코드워드는 명암값이나 픽셀들의 평균값을 이용하지만, 본 발명의 코드북 방법에서는 컬러 성분별 최대값 및 최소값을 이용할 수 있다. In the conventional codebook method, a codeword uses a value of brightness or an average value of pixels, but in the codebook method of the present invention, the maximum value and minimum value for each color component can be used.
먼저 연속된 N개의 픽셀을 이용하여 코드북을 생성하는 방법은 일례로, 도 4와 같이, First, a method for generating a codebook using N consecutive pixels is an example, as shown in FIG.
도 4에 도시된 바와 같이, 코드북을 생성하는 단계는 첫 번째 픽셀에 대해 코드워드를 생성하는 단계(S110), 제1 코드워드에 업데이트하는 단계(S120), 제1, 2 코드워드를 병합하는 단계(S130) 및 새로운 코드워드를 추가하는 단계(S140)를 포함할 수 있다.As shown in FIG. 4, generating a codebook includes generating a codeword for a first pixel (S110), updating the first codeword (S120), and merging the first and second codewords. It may include step S130 and adding a new codeword (S140).
먼저, 도 4와 같이, 첫 번째 픽셀에 대해 코드워드를 생성하는 단계(S110)에서는 복수의 이미지 프레임의 각 위치에서 시계열적으로 나열되는 복수의 픽셀 중 첫 번째 픽셀의 컬러값을 기초로 코드워드를 생성(S110)할 수 있다.First, as shown in FIG. 4, in the step of generating a codeword for the first pixel (S110), the codeword is based on the color value of the first pixel among a plurality of pixels listed in time series at each position of a plurality of image frames. Can be generated (S110).
이후, 제1 코드워드에 업데이트하는 단계(S120)에서, 첫 번째 이후의 모든 픽셀 중 어느 하나인 현재 픽셀의 컬러값이 기생성된 제1 코드워드에 대응되는 경우, 현재 픽셀의 컬러값을 기생성된 제1 코드워드에 업데이트(S120)할 있다. Then, in the step of updating the first codeword (S120), if the color value of the current pixel, which is any one of all pixels after the first one, corresponds to the pre-generated first codeword, the color value of the current pixel is based on The generated first codeword may be updated (S120).
예를 들어, 첫번째 픽셀에 대한 제1 코드워드가 생성되고, 두 번째 픽셀의 컬러값이 제1 코드워드의 컬러 인자와 임계 범위 내로 동일한 경우, 두 번째 픽셀의 값은 제1 코드워드에 업데이트될 수 있다. For example, if a first codeword for a first pixel is generated and a color value of a second pixel is equal to a color factor of the first codeword within a threshold range, the value of the second pixel will be updated to the first codeword. can
이와 마찬가지로, n번째 픽셀의 컬러값이 기생성된 다른 코드워드와 임계 범위 내로 동일한 경우, n 번째 픽셀의 값은 기생성된 다른 코드워드에 업데이트될 수 있다.Similarly, when the color value of the n-th pixel is the same as that of another pre-generated codeword within a critical range, the value of the n-th pixel may be updated to the other pre-generated codeword.
이후, 제1, 2 코드워드를 병합하는 단계(S130)에서, 현재 픽셀의 컬러값이 제1 코드워드 이외의 다른 제2 코드워드에 대응되는 경우 제1, 2 코드워드가 서로 병합(S130)될 수 있다.Thereafter, in the step of merging the first and second codewords (S130), when the color value of the current pixel corresponds to a second codeword other than the first codeword, the first and second codewords are merged with each other (S130) It can be.
예를 들어, 현재 픽셀이 기생성된 제1, 2 코드워드에 해당되는 경우, 현재 픽셀이 제1 코드워드에 업데이트된 이후, 제1 코드워드와 제2 코드워드가 서로 병합될 수 있다.For example, if the current pixel corresponds to the pre-generated first and second codewords, the first codeword and the second codeword may be merged with each other after the current pixel is updated to the first codeword.
다음, 새로운 코드워드를 추가하는 단계(S140)에서는 현재 픽셀의 현재 픽셀의 컬러값과 대응되는 기생성된 코드워드가 없는 경우, 현재 픽셀은 새로운 코드워드로 생성되어 추가(S140)될 수 있다.Next, in the step of adding a new codeword (S140), if there is no pre-generated codeword corresponding to the color value of the current pixel of the current pixel, the current pixel may be generated as a new codeword and added (S140).
이와 같이, 코드북을 생성하는 단계(S100)에 대한 구현 방법은 일례로 도 5에 도시된 바와 같이 알고리즘 1로 구현될 수 있다. As such, the implementation method for generating the codebook (S100) may be implemented as
도 5의 알고리즘 1에서, Ci(j)는 i 번째 코드워드의 j 속성을 나타낼 수 있다. 알고리즘 1과 같이, 코드북을 생성하는 단계(S100)는 첫 번째 픽셀을 코드워드에 추가(S110)하는 것으로 시작할 수 있다.In
첫번째 for 문은 첫 번째 이후의 모든 픽셀을 이용하여 코드북을 만드는 것을 의미할 수 있다.The first for statement may mean creating a codebook using all pixels after the first one.
두 번째 for 문은 현재 픽셀에 대해 기생성된 코드워드와 유사도를 측정하여, 현재 픽셀에 대한 컬러값이 기생성된 코드워드의 컬러 인자의 임계 범위 내로 동일한 경우, 기생성된 코드워드에 업데이트(S120)하거나 병합(S130)하는 것을 의미할 수 있다. The second for statement measures the similarity with the codeword generated for the current pixel, and if the color value for the current pixel is within the critical range of the color factor of the generated codeword, the generated codeword is updated ( S120) or merging (S130).
또한, 현재 픽셀에 대한 컬러값이 기생성된 코드워드의 컬러 인자의 임계 범위를 넘어서서 기생성된 코드워드와 유사하지 않은 경우, 현재 픽셀에 대한 값은 새로운 코드워드로 추가될 수 있다.Also, when the color value of the current pixel exceeds a critical range of a color factor of the previously generated codeword and is not similar to the previously generated codeword, the value of the current pixel may be added as a new codeword.
본 발명은 현재 픽셀에 대한 복수의 컬러값 중 적어도 하나의 컬러값이 기생성된 코드워드의 컬러 인자값의 임계 범위를 벗어나는 경우, 현재 픽셀에 대응되는 기생성된 코드워드가 없는 것으로 판단하여, 새로운 코드워드를 추가할 수 있다. 이외의 도 5의 알고리즘 1에 대한 구체적인 설명은 앞선 도 4에 대한 설명과 동일하므로 생략한다.The present invention determines that there is no pre-generated code word corresponding to the current pixel when at least one color value among a plurality of color values for the current pixel is out of the critical range of the color factor value of the pre-generated code word, New codewords can be added. A detailed description of
현재 픽셀의 컬러값을 기생성된 코드워드에 업데이트하거나, 두 개의 코드워드를 병합하거나, 새로운 코드워드에 추가하는 경우에 대해서는, 이하의 도 6 및 도 7을 참조하여 보다 구체적으로 설명한다.A case of updating the color value of the current pixel to a pre-generated codeword, merging two codewords, or adding a new codeword will be described in more detail with reference to FIGS. 6 and 7 below.
도 2의 코드북을 생성하는 단계(S100)에서는, 코드북이 각 이미지 프레임의 각 위치별로 생성되되, 코드북에 포함되는 적어도 하나의 코드워드는 전술한 바와 같이, 각 이미지 프레임의 동일한 위치에서 시계열적으로 나열된 픽셀들에 대한 정보가 그룹화되어 저장될 수 있다.In the step of generating the codebook of FIG. 2 (S100), the codebook is generated for each position of each image frame, and at least one codeword included in the codebook is time-sequentially located at the same position of each image frame as described above. Information on the listed pixels may be grouped and stored.
아울러, 코드북을 생성하는 단계(S100)에서 생성되는 각 코드워드에는 수학식 4에서 전술한 바와 같이, 코드워드에 포함되는 6개의 컬러 인자, 픽셀수 인자(M) 및 연속성 인자(G) 중 연속성 인자(G)를 제외한 6개의 컬러 인자 및 픽셀수 인자(M)가 생성될 수 있다.In addition, as described above in
이후, 도 2에서, 코드북을 수정하는 단계(S200)에서는 적어도 하나의 코드워드 중 동일한 코드워드가 시계열적으로 연속되는 픽셀의 최대 개수를 나타내는 연속성 인자(G)를 연산하여 코드북을 수정할 수 있다.Then, in FIG. 2, in the step of modifying the codebook (S200), the codebook may be modified by calculating a continuity factor (G) representing the maximum number of pixels in which the same codeword among at least one codeword is time-sequentially consecutive.
이와 같이 코드북을 생성하는 단계(S100)에서 각 코드워드에 대한 6개의 컬러 인자 및 픽셀수 인자(M)가 생성된 후, 코드북을 수정하는 단계(S200)에서 각 코드워드에 대해 코드워드의 연속성을 나타내는 연속성 인자(G)를 구하기 위하여 한번 더 전체 이미지 프레임에 대해서 코드북을 수정할 수 있다. After six color factors and a pixel number factor (M) for each codeword are generated in the step of generating the codebook (S100), the continuity of the codeword for each codeword in the step of modifying the codebook (S200) The codebook can be modified for the entire image frame once more to obtain the continuity factor (G) representing
연속성 인자(G)를 구하기 위한 방법은 추후 도 8에 도시된 알고리즘 5를 참조하여 보다 구체적으로 설명한다. 연속성 인자(G)는 동일한 코드워드가 연속해서 나타나는 픽셀의 수를 나타내며, 동일한 코드북에 포함되는 각각의 코드워드에는 가장 큰 값을 연속성 인자(G)만 저장될 수 있다.A method for obtaining the continuity factor G will be described in more detail with reference to
이와 같이, 코드북이 완성된 후, 도 2의 노이즈 픽셀을 추출하는 단계(S300)에서는 코드북과 각 이미지 프레임을 입력받아, 코드북에 포함된 연속성 인자(G)를 이용하여 각 이미지 프레임에 포함된 복수의 픽셀들 중에서 노이즈 픽셀을 추출할 수 있다.In this way, after the codebook is completed, in the step of extracting the noise pixels of FIG. 2 (S300), the codebook and each image frame are input, and the plurality of images included in each image frame are used by using the continuity factor (G) included in the codebook. A noise pixel may be extracted from among the pixels of .
노이즈 픽셀을 추출하는 단계(S300)에서는, 생성된 코드북을 이용하여 각각의 이미지 프레임을 분석할 수 있다. 이때 이미지 프레임의 각 위치에서 시계열적으로 나열되는 각 픽셀에 해당하는 코드워드를 찾고 코드워드를 구성하는 픽셀수 인자(M)와 연속된 그룹의 개수를 나타내는 연속성 인자(G)를 이용하여 시계열적으로 나열되는 복수의 픽셀 중에서 노이즈 픽셀을 검출할 수 있다.In the step of extracting noise pixels (S300), each image frame may be analyzed using the generated codebook. At this time, a codeword corresponding to each pixel listed in time-sequential order at each position of the image frame is found, and a continuity factor (G) indicating the number of consecutive groups and a factor of the number of pixels constituting the codeword (M) are used. A noise pixel may be detected from among a plurality of pixels listed as .
이와 같은 노이즈 픽셀을 추출하는 단계(S300)에 대한 보다 구체적인 설명은 추후 도 9 및 도 10을 참조하여 설명한다.A more detailed description of the step of extracting the noise pixels (S300) will be described with reference to FIGS. 9 and 10 later.
다음, 도 2의 슈퍼 픽셀을 생성하는 단계(S400)에서는 노이즈 픽셀을 추출하는 단계(S300)와는 별도로, 각 이미지 프레임을 입력받아 각 이미지 프레임에 포함된 복수의 픽셀들에 대해 미리 설정된 임계값 이하로 동일한 컬러를 갖는 픽셀들에 대해 그룹화하여 슈퍼 픽셀을 생성할 수 있다.Next, in the step of generating a super pixel in FIG. 2 (S400), apart from the step of extracting a noise pixel (S300), each image frame is received and a plurality of pixels included in each image frame are below a predetermined threshold value. A super pixel can be created by grouping pixels having the same color.
보다 구체적으로, 슈퍼 픽셀을 생성하는 단계(S400)에서는 각 이미지 프레임에서 유사한 컬러를 갖는 픽셀들을 그룹화하여 슈퍼 픽셀로 설정할 수 있다.More specifically, in the step of generating a super pixel ( S400 ), pixels having similar colors in each image frame may be grouped and set as a super pixel.
슈퍼 픽셀을 생성하는 방법은 SLIC 알고리즘을 사용할 수 있다. 일반적으로 SLIC 알고리즘은 k-mean 방법을 이용한 군집화를 수행하지만, 본 발명에서는 모든 픽셀에 대해서 k-mean 방법을 수행하는 것이 아니라, 정해진 씨드(seed) 픽셀에 대해서만 군집화를 수행함으로써 보다 정확하고 빠르게 슈퍼 픽셀을 생성할 수 있다.A method of generating a super pixel may use the SLIC algorithm. In general, the SLIC algorithm performs clustering using the k-mean method, but in the present invention, the k-mean method is not performed for all pixels, but clustering is performed only for a predetermined seed pixel, so that it is more accurate and faster. pixels can be created.
예를 들어, 슈퍼 픽셀을 생성하는 단계(S400)에서는 노이즈 픽셀을 추출하는 단계(S300)에서 추출된 노이즈 픽셀을 씨드 픽셀로 설정한 후, 씨드 픽셀에 대해서만 군집화를 수행할 수도 있다. 그러나, 본 발명이 반드시 이에 한정되는 것은 아니다.For example, in the step of generating a super pixel (S400), after setting the noise pixel extracted in the step of extracting a noise pixel (S300) as a seed pixel, clustering may be performed only on the seed pixel. However, the present invention is not necessarily limited thereto.
본 발명의 일례에 따라 생성되는 코드북은 각 이미지 프레임의 각 부분에 위치하여 시계열적으로 나열되는 픽셀에 대한 정보값이므로, 노이즈가 발생된 영역을 정확하게 검출하는데, 한계가 있을 수 있다.Since the codebook generated according to an example of the present invention is an information value for pixels located in each part of each image frame and arranged in time series, there may be limitations in accurately detecting a region where noise is generated.
그러나, 이미지 프레임의 각 부분에 시계열적으로 나열되는 복수의 픽셀에서 노이즈 픽셀을 검출하기 때문에 각 이미지 프레임에 대해 슈퍼 픽셀 영역을 설정한 후, 각 슈퍼 픽셀에서 노이즈 픽셀이 차지하는 비율을 반영하면 해당 슈퍼 픽셀이 노이즈 영역인지 여부를 쉽게 검출할 수 있다.However, since a noise pixel is detected from a plurality of pixels arranged in time series in each part of an image frame, after setting the super pixel area for each image frame and reflecting the ratio occupied by the noise pixel in each super pixel, the corresponding super pixel area is set. It is easy to detect whether a pixel is a noise region or not.
다음, 도 2의 노이즈 영역으로 결정하는 단계(S500)에서는, 슈퍼 픽셀에서 노이즈 픽셀이 차지하는 비율이 미리 설정된 임계값 이상인 경우 슈퍼 픽셀을 노이즈 영역으로 결정할 수 있다.Next, in determining the noise area of FIG. 2 ( S500 ), the super pixel may be determined as the noise area when the ratio occupied by the noise pixel in the super pixel is equal to or greater than a preset threshold value.
보다 구체적으로, 노이즈 영역으로 결정하는 단계(S500)에서는, 슈퍼 픽셀을 형성하는 영역의 픽셀의 개수가 Ns개이고, 슈퍼 픽셀에서 노이즈 픽셀의 개수가 Nn개인 경우를 가정하면, Nn/Ns의 값이 미리 설정된 임계값 이상인 경우 해당 슈퍼 픽셀을 노이즈 영역으로 결정할 수 있으며, Nn/Ns의 값이 임계값 미만인 경우 해당 슈퍼 픽셀을 배경 영역으로 결정할 수 있다.More specifically, in determining the noise area (S500), assuming that the number of pixels in the area forming the superpixel is Ns and the number of noise pixels in the superpixel is Nn, the value of Nn/Ns is When the value of Nn/Ns is greater than or equal to a preset threshold value, the corresponding super pixel may be determined as the noise region, and when the value of Nn/Ns is less than the threshold value, the corresponding super pixel may be determined as the background region.
이와 같이, 각 이미지 프레임에 대해 노이즈 영역이 결정된 후, 노이즈 영역으로 결정된 슈퍼 픽셀의 영역의 컬러는 제거될 수 있다.In this way, after the noise area is determined for each image frame, the color of the area of the super pixel determined as the noise area may be removed.
이후, 도 2의 노이즈 영역을 인페인팅하는 단계(S600)에서는 노이즈 영역으로 결정된 슈퍼 픽셀은 시계열적으로 인접한 이미지 프레임의 동일한 부분에 위치하는 슈퍼 픽셀의 컬러로 대체할 수 있다. Then, in the step of inpainting the noise area of FIG. 2 ( S600 ), the superpixel determined as the noise area may be replaced with the color of a superpixel located in the same part of an adjacent image frame in time series.
보다 구체적으로, 노이즈 영역을 인페인팅하는 단계(S600)에서는 노이즈 영역으로 결정된 슈퍼 픽셀보다 이전 이미지 프레임(또는 이후 이미지 프레임)의 동일한 부분에 위치하는 슈퍼 픽셀의 컬러를 이용하여 슈퍼 픽셀의 영역을 인페인팅하여, 노이즈 영역으로 결정된 슈퍼 픽셀의 컬러를 대체할 수 있다.More specifically, in the step of inpainting the noise area (S600), the superpixel area is inked using the color of the superpixel located in the same part of the previous image frame (or subsequent image frame) than the superpixel determined as the noise area (S600). By painting, the color of the super pixel determined as the noise area can be replaced.
이때, 시계열적으로 인접한 이미지 프레임의 동일한 부분에 위치하는 슈퍼 픽셀은 배경 영역으로 결정된 슈퍼 픽셀일 수 있다.In this case, super pixels located in the same part of time-sequentially adjacent image frames may be super pixels determined as the background area.
이후, 노이즈가 필터링된 결과 영상이 출력될 수 있다.Thereafter, an image as a result of noise filtering may be output.
이하에서는 전술한 도 2에서 코드북을 생성하는 단계(S100)에서, 새로운 코드워드를 생성하거나, 기생성된 코드워드에 업데이트하거나, 두 개의 코드워드를 병합하는 일례에 대해 구체적으로 설명한다.Hereinafter, an example of generating a new codeword, updating an existing codeword, or merging two codewords in the above-described step of generating a codebook in FIG. 2 (S100) will be described in detail.
도 6의 (a)는 도 5에서 새로운 코드워드를 작성하는 알고리즘의 일례이고, 도 6의 (b)는 도 5에서 기생성된 코드워드를 업데이트하는 알고리즘의 일례이고, 도 7은 도 5에서 기생성된 코드워드를 병합하는 알고리즘의 일례이다.6(a) is an example of an algorithm for creating a new codeword in FIG. 5, FIG. 6(b) is an example of an algorithm for updating a pre-generated codeword in FIG. 5, and FIG. This is an example of an algorithm that merges pre-generated codewords.
도 4 및 도 5에서 새로운 코드워드를 추가하는 방법은 일례로, 도 6의 (a)에 도시된 알고리즘 2와 같이 구현될 수 있다.The method of adding a new codeword in FIGS. 4 and 5 may be implemented as
현재 픽셀(X)에 대해 새로운 코드워드(CL)를 추가하는 경우, 도 6의 (a)와 같이, 현재 픽셀(X)에 대한 복수의 컬러값 각각이 새로운 코드워드(CL)의 각 컬러 인자의 최대값 및 최소값으로 구성되고, 현재 픽셀에 대응되는 기생성된 코드워드가 없으므로, 픽셀수 인자(M)와 연속성 인자(G)는 각각 1로 구성될 수 있다. 이와 같이 새로 생성된 코드워드는 코드북에 업데이트될 수 있다.When a new codeword (CL) is added for the current pixel (X), as shown in FIG. It is composed of the maximum and minimum values of , and since there is no pre-generated codeword corresponding to the current pixel, the pixel number factor (M) and the continuity factor (G) may each be configured as 1. This newly generated codeword may be updated in the codebook.
도 4 및 도 5의 제1 코드워드에 업데이트하는 단계(S120)에 대해, 현재 픽셀(X)의 컬러값(x1, x2, x3)이 제1 코드워드(Ci)의 컬러 인자의 임계 범위 내에 포함되는 경우, 도 6의 (a)와 같이, 현재 픽셀(X)이 제1 코드워드(Ci)에 대응되는 것으로 판단하여, 현재 픽셀의 컬러값을 제1 코드워드(Ci)의 컬러 인자에 반영하고 제1 코드워드의 픽셀수 인자(M)를 증가시켜 제1 코드워드를 업데이트할 수 있다.In the step of updating the first codeword of FIGS. 4 and 5 (S120), the color values (x1, x2, x3) of the current pixel (X) are within the critical range of the color factor of the first codeword (Ci). If included, as shown in (a) of FIG. 6, it is determined that the current pixel (X) corresponds to the first codeword (Ci), and the color value of the current pixel is assigned to the color factor of the first codeword (Ci). The first codeword may be updated by reflecting and increasing the pixel number factor (M) of the first codeword.
여기서, 제1 코드워드의 컬러 인자의 임계 범위는 제1 코드워드의 컬러 인자의 최대값(Ci(maxj))보다 미리 설정된 값만큼 크고, 최소값(Ci(minj))보다 미리 설정된 값만큼 작을 수 있다.Here, the critical range of the color factor of the first codeword may be larger than the maximum value (Ci(maxj)) of the color factor of the first codeword by a preset value and smaller than the minimum value (Ci(minj)) by a preset value. there is.
따라서, 현재 픽셀(X)의 컬러값(x1, x2, x3)이 기생성된 코드워드의 컬러 인자의 최소값(Ci(minj))보다 작거나 최대값(Ci(maxj))보다 큰 경우에도, 현재 픽셀은 기생성된 코드워드에 매칭될 수 있다.Therefore, even if the color values (x1, x2, x3) of the current pixel (X) are smaller than the minimum value (Ci(minj)) or greater than the maximum value (Ci(maxj)) of the color factor of the previously generated codeword, The current pixel may be matched to the pre-generated codeword.
이와 같이, 현재 픽셀의 컬러값이 기생된 코드워드의 최소값 내지 최대값의 범위를 넘어서는 경우, 기생성된 코드워드가 갱신될 때 현재 픽셀(X)의 컬러값(x1, x2, x3)이 제1 코드워드(Ci)의 컬러 인자(Ci(minj), Ci(maxj))에 반영될 수 있다.In this way, when the color value of the current pixel exceeds the range of the minimum value to the maximum value of the parasitic codeword, the color values (x1, x2, x3) of the current pixel X are changed when the generated codeword is updated. This may be reflected in the color factors (Ci(minj), Ci(maxj)) of 1 codeword (Ci).
도 4 및 도 5에서, 현재 픽셀을 기생성된 코드워드에 업데이트(S120)하는 방법은 일례로, 도 6의 (b)에 도시된 알고리즘 3과 같이 구현될 수 있다.In FIGS. 4 and 5 , a method of updating a current pixel to a pre-generated codeword (S120) may be implemented as
현재 픽셀과 일치하는 기생성된 코드워드(Ci)가 존재하면, 도 6의 (b)과 같이, 현재 픽셀값을 반영하여 기생성된 코드워드(Ci)의 속성을 갱신할 수 있다.If there is a pre-generated codeword Ci that matches the current pixel, the property of the pre-generated codeword Ci may be updated by reflecting the current pixel value, as shown in FIG.
현재 픽셀(X)의 값을 기생성된 코드워드(Ci)에 업데이트할 때, 기생성된 코드워드(Ci)에서 픽셀수 인자(M)를 하나 증가시키고, 현재 픽셀(X)의 컬러값이 기생성된 코드워드(Ci)의 컬러 인자의 최소값보다 작거나 최대값보다 큰 경우, 기생성된 코드워드의 컬러 인자의 최소값 또는 최대값을 현재 픽셀의 컬러값으로 변경할 수 있다.When the value of the current pixel (X) is updated to the previously generated codeword (Ci), the number of pixels factor (M) is increased by one in the previously generated codeword (Ci), and the color value of the current pixel (X) is When the minimum or maximum value of the color factor of the pre-generated codeword Ci is smaller than or greater than the maximum value, the minimum or maximum value of the color factor of the pre-generated codeword may be changed to the color value of the current pixel.
도 4 및 도 5의 제1, 2 코드워드를 병합하는 단계(S130)에 대해, 현재 픽셀이 제1, 2 코드워드(Ci, Cj)에 대응되는 경우, 제1, 2 코드워드(Ci, Cj) 중 어느 하나의 코드워드로 병합하되, 나머지 하나의 코드워드는 무효화시키고, 나머지 하나의 코드워드에 포함된 컬러 인자값을 어느 하나의 코드워드에 반영할 수 있다.In the step of merging the first and second codewords of FIGS. 4 and 5 (S130), when the current pixel corresponds to the first and second codewords Ci and Cj, the first and second codewords Ci, Cj), the other codeword may be invalidated, and the color factor value included in the other codeword may be reflected in any one codeword.
이를 위해 기본적으로 입력되는 현재 픽셀값을 이용하여 코드워드의 범위를 확장할 수 있다. 구체적으로 제1, 2 코드워드(Ci, Cj)가 확장하면 겹치는 경우가 발생하는데 이때는 제1, 2 코드워드(Ci, Cj)를 하나의 코드워드로 병합할 수 있다.To this end, the range of the codeword can be extended using the current pixel value that is basically input. Specifically, when the first and second codewords Ci and Cj are extended, overlapping occurs. In this case, the first and second codewords Ci and Cj may be merged into one codeword.
본 발명의 코드워드 병합은 현재 픽셀의 컬러값이 제1, 2 코드워드의 컬러 인자의 임계 범위에 속하는 경우가 겹치는 경우에 발생할 수 있다. 이때에 제1, 2 코드워드 중 각 코드워드의 인덱스가 작은 코드워드로 병합하고, 인덱스가 큰 코드워드는 값을 0으로 설정하여 무효화시킬 수 있다. 그러나, 인덱스가 작은 코드워드로 병합하는 것은 일례로, 본 발명이 이에 한정되는 것은 아니고, 반대로 인덱스가 큰 값을 갖는 코드워드로 병합하는 것도 가능하다.Codeword merging according to the present invention may occur when the color values of the current pixel fall within the critical ranges of the color factors of the first and second codewords. At this time, among the first and second codewords, each codeword may be merged into a codeword having a small index, and a codeword having a large index may be invalidated by setting a value to 0. However, merging into a codeword having a small index is an example, and the present invention is not limited thereto, and conversely, merging into a codeword having a large index value is also possible.
이와 같이, 코드워드의 병합은 일례로, 도 7에 도시된 알고리즘 4에 따라 구현될 수 있다. 이와 같은 코드워드의 병합은 도 5의 알고리즘 1에 따라, 현재 픽셀의 값이 제1 코드워드(codeword index i)에 업데이트된 이후 수행될 수 있다.In this way, the merging of codewords can be implemented according to
도 7과 같이, 제1, 2 코드워드(Ci, Cj) 중 인덱스 값(i, j)이 작은 값을 k로 지정하고, 큰 값을 l로 지정할 수 있다. 만약 제1 코드워드의 인덱스 i가 제2 코드워드의 인덱스 j보다 작을 때, k값은 i로 지정되고, l값은 j로 지정될 수 있다.As shown in FIG. 7 , a value having a smaller index value (i, j) among the first and second codewords (Ci, Cj) may be designated as k, and a larger value may be designated as l. If the index i of the first codeword is smaller than the index j of the second codeword, the k value may be designated as i and the l value may be designated as j.
이후, 제1, 2 코드워드(Ci, Cj) 각각의 픽셀수 인자(M)값을 합하여, Ck의 코드워드 인덱스 값을 갖는 코드워드로 지정할 수 있다. 이때 Ck의 코드워드 인덱스 값은 제1 코드워드(Ci)의 인덱스 값일 수 있다.Thereafter, a codeword having a codeword index value of Ck may be designated by summing the value of the factor M of the number of pixels of the first and second codewords Ci and Cj. In this case, the codeword index value of Ck may be the index value of the first codeword Ci.
본 발명에서는 제1, 2 코드워드(Ci, Cj)를 병합할 때, 제1, 2 코드워드(Ci, Cj)의 인덱스 값(i, j) 중 작은 인덱스값을 갖는 제1 코드워드(Ci)에 제2 코드워드(Cj)를 병합하는 경우를 일례로 설명하였지만, 본 발명은 이에 한정되는 것은 아니고, 제1, 2 코드워드 중 상대적으로 큰 인덱스 값을 갖는 제2 코드워드에 제1 코드워드를 병합하는 것도 가능하다.In the present invention, when merging the first and second codewords Ci and Cj, the first codeword Ci having a smaller index value among the index values i and j of the first and second codewords Ci and Cj ) has been described as an example of merging the second codeword Cj, but the present invention is not limited thereto, and the first codeword has a relatively large index value among the first and second codewords. It is also possible to merge words.
제1 코드워드(Ci)에 제2 코드워드(Cj)를 병합하는 경우, 제1, 2 코드워드 각각에서 컬러 인자의 최소값(Ci(mint), Cj(mint)) 중 작은 값을 제1 코드워드(Ci)의 컬러 인자의 최소값(Ck(mint))으로 변경하고, 제1, 2 코드워드(Ci, Cj) 각각에서 컬러 인자의 최대값(Ci(maxt), Cj(maxt)) 중 큰 값을 제1 코드워드의 컬러 인자의 최대값(Ck(maxt))으로 변경할 수 있다. When merging the second codeword (Cj) with the first codeword (Ci), the smaller of the minimum values (Ci(mint), Cj (mint)) of the color factors in each of the first and second codewords is used as the first codeword. It is changed to the minimum value (Ck(mint)) of the color factor of the word (Ci), and the largest of the maximum values (Ci(maxt), Cj (maxt)) of the color factors in each of the first and second codewords (Ci, Cj). The value may be changed to the maximum value (Ck(maxt)) of the color factor of the first codeword.
이하에서는, 도 8을 참조하여 코드북을 수정하는 단계(S200)의 일례에 대해 구체적으로 설명한다.Hereinafter, an example of the step (S200) of modifying the codebook will be described in detail with reference to FIG. 8.
도 8은 도 2에서 코드북을 수정하여 연속성 인자(G)를 산출하는 알고리즘의 일례이다.FIG. 8 is an example of an algorithm for calculating a continuity factor (G) by modifying the codebook in FIG. 2 .
코드북을 수정하는 단계(S200)에서는 적어도 하나의 코드워드 중 동일한 코드워드에 해당되는 픽셀 중 시계열적으로 연속되는 픽셀의 최대 개수를 나타내는 연속성 인자(G)를 연산하면서, 코드북을 수정할 수 있다.In the step of modifying the codebook (S200), the codebook may be modified while calculating a continuity factor (G) indicating the maximum number of pixels that are sequentially sequential among pixels corresponding to the same codeword among at least one codeword.
이와 같이, 코드북을 수정하는 단계(S200)는 일례로 도 8에 도시된 알고리즘 5와 같이 알고리즘 5로 구현될 수 있다. In this way, the step of modifying the codebook (S200) may be implemented as
코드북을 수정하는 단계(S200)에서는 각 이미지 프레임의 동일한 부분에 위치하여 시계열적으로 나열되는 복수의 픽셀에 대한 코드워드에 대해 수행될 수 있다.The step of modifying the codebook (S200) may be performed on codewords for a plurality of pixels located in the same part of each image frame and arranged in time series.
알고리즘 5와 같이, 복수의 픽셀 중 첫 번째 픽셀(x1)에 대한 코드워드의 연속성 인자(G)에 대해서는 초기값으로 1이 설정될 수 있다.As in
이전 픽셀에 대한 코드워드를 이전 코드워드(prev)라고 정의하고, 현재 픽셀(X)은 두 번째 픽셀부터 시계열적으로 순차적으로 진행되는 픽셀일 수 있다.A codeword for a previous pixel is defined as a previous codeword (prev), and the current pixel (X) may be a pixel sequentially progressing in time series from the second pixel.
현재 픽셀(X)에 대한 코드워드(i)가 이전 픽셀에 대한 이전 코드워드(prev)와 동일하면, 동일한 코드워드가 연속되는 속성으로 정의되는 인접 길이(adjcentLength)를 증가시킬 수 있다. If the codeword (i) for the current pixel (X) is the same as the previous codeword (prev) for the previous pixel, the same codeword may increase the adjacent length (adjcentLength) defined as a contiguous attribute.
즉, 현재 픽셀(X)에 대한 코드워드(i)의 컬러 인자가 이전 코드워드의 컬러 인자의 임계 범위 내로 동일하면, 현재 픽셀(X)에 대한 코드워드(i)는 이전 코드워드(prev)와 매칭되어 동일한 것으로 판단하고, 인접 길이(adjcentLength)의 값을 1만큼 증가시킬 수 있다.That is, if the color factor of the codeword i for the current pixel X is equal within the critical range of the color factor of the previous codeword, the codeword i for the current pixel X is the same as the previous codeword prev. It is determined that it is the same by matching with , and the value of the adjacent length (adjcentLength) may be increased by 1.
이와 같이, 인접 길이(adjcentLength)의 값을 증가시키다가, 인접 길이의 값이 이전 코드워드(prev)의 연속성 인자(G)의 값보다 크게 되면, 이전 코드워드(prev)의 연속성 인자(G)를 인접 길이(adjcentLength)의 값으로 갱신할 수 있다.In this way, while increasing the value of the adjacent length (adjcentLength), when the value of the adjacency length is greater than the value of the continuity factor (G) of the previous codeword (prev), the continuity factor (G) of the previous codeword (prev) can be updated with the value of the adjacent length (adjcentLength).
또한, 현재 픽셀(X)에 대한 코드워드(i)의 컬러 인자가 이전 코드워드(prev)의 컬러 인자의 임계 범위를 벗어나는 경우, 현재 픽셀(X)에 대한 코드워드(i)의 연속성 인자(G)는 1로 설정될 수 있다.In addition, when the color factor of the codeword i for the current pixel X is out of the critical range of the color factor of the previous codeword prev, the continuity factor of the codeword i for the current pixel X ( G) may be set to 1.
코드북을 수정하는 단계(S200)는 이와 같은 과정을 N번째 이미지 프레임까지 반복하여 수행함으로써, 코드북에 대한 수정을 진행할 수 있다.In the step of modifying the codebook (S200), the codebook can be modified by repeating this process up to the Nth image frame.
이에 따라, 시계열적으로 나열된 각 이미지 프레임에 대해 위치별로 코드북을 생성 및 수정하여, 각 코드북에 포함되는 적어도 하나의 코드워드에 대해 적어도 하나의 컬러 인자, 픽셀수 인자(M) 및 연속성 인자(G)를 생성할 수 있다.Accordingly, a codebook is generated and modified by position for each image frame listed in time series, and at least one color factor, a pixel number factor (M) and a continuity factor (G) are determined for at least one codeword included in each codebook. ) can be created.
이하에서는, 전술한 바와 같이 생성된 코드북과 각 이미지 프레임을 이용하여 각 이미지 프레임의 위치별로 노이즈 픽셀을 추출하는 방법에 대해 도 9 및 도 10을 참조하여 설명한다.Hereinafter, a method of extracting a noise pixel for each position of each image frame using the codebook generated as described above and each image frame will be described with reference to FIGS. 9 and 10 .
도 9는 도 2에서 노이즈 픽셀을 추출하는 개념의 일례를 설명하기 위한 도이고, 도 10은 도 9에 따라 노이즈 픽셀을 추출하는 알고리즘의 일례이다.FIG. 9 is a diagram for explaining an example of a concept of extracting a noise pixel in FIG. 2 , and FIG. 10 is an example of an algorithm for extracting a noise pixel according to FIG. 9 .
본 발명에서, 노이즈 영역으로 결정하는 단계(S500)는 슈퍼 픽셀에서 노이즈 픽셀이 차지하는 비율이 미리 설정된 임계값 이상인 경우 슈퍼 픽셀을 노이즈 영역으로 결정할 수 있다.In the present invention, in determining the noise area (S500), the super pixel may be determined as the noise area when the ratio occupied by the noise pixel in the super pixel is equal to or greater than a preset threshold value.
즉, 노이즈 픽셀을 추출하는 단계(S300)에서는 현재 픽셀에 대한 코드워드의 픽셀수 인자(M) 및 연속성 인자(G)가 미리 설정된 임계값 이하인 경우 현재 픽셀을 노이즈로 추출할 수 있다.That is, in the step of extracting noise pixels ( S300 ), if the pixel number factor (M) and the continuity factor (G) of the codeword for the current pixel are equal to or less than a preset threshold value, the current pixel may be extracted as noise.
일례로, 노이즈 픽셀을 추출하는 단계(S300)에서는, 현재 픽셀에 대한 코드워드의 픽셀수 인자(M)가 미리 설정된 픽셀수 인자(M)에 대한 최소 임계값 이하인 경우, 현재 픽셀을 노이즈로 검출할 수 있다.For example, in the step of extracting a noise pixel (S300), if the pixel number factor (M) of the codeword for the current pixel is equal to or less than a preset minimum threshold value for the pixel number factor (M), the current pixel is detected as noise. can do.
이와 반대로, 현재 픽셀에 대한 코드워드의 픽셀수 인자(M)가 미리 설정된 픽셀수 인자(M)에 최대 임계값보다 큰 경우, 현재 픽셀을 배경으로 분류할 수 있다.Conversely, if the pixel number factor (M) of the codeword for the current pixel is greater than the maximum threshold for the preset pixel number factor (M), the current pixel may be classified as a background.
아울러, 배경으로 현재 픽셀에 대한 코드워드의 연속성 인자(G)가 미리 설정된 연속성 인자(G)에 대한 임계값보다 작은 경우 노이즈로 검출하고, 연속성 인자(G)에 대한 임계값보다 큰 경우 배경으로 검출할 수 있다.In addition, if the continuity factor (G) of the codeword for the current pixel as the background is smaller than the preset threshold for the continuity factor (G), it is detected as noise, and if it is greater than the threshold for the continuity factor (G), it is returned to the background. can be detected.
일례로, 도 9에서 수평 축은 시계열적으로 나열되는 시간축을 나타하고, 수평 축 상에 표시되는 펄스는 동일한 코드워드를 나타낸다.For example, in FIG. 9 , a horizontal axis represents a time axis arranged in time series, and pulses displayed on the horizontal axis represent the same codeword.
도 9의 (a)는 시간축을 기준으로 동일한 속성을 가진 코드 워드 a(Ca)가 시간적으로 불연속되는 경우일 수 있다. 이와 같은 코드 워드 a(Ca)는 동일한 컬러 인자의 최대값 및 최소값을 가질 수 있으며, 픽셀수 인자(M)가 2이고 연속성 인자(G)가 1인 경우를 예시한다.9(a) may be a case in which code words a(Ca) having the same property are temporally discontinuous with respect to the time axis. Such a code word a(Ca) may have the same maximum and minimum values of the color factor, and illustrates a case where the pixel number factor (M) is 2 and the continuity factor (G) is 1.
도 9의 (a)에 나타난 그래프는 동일한 코드 워드 a(Ca)를 형성하는 픽셀수 개수(M)의 값이 2이고 연속성 인자(G)의 값이 1인 경우이다. In the graph shown in (a) of FIG. 9, the value of the number of pixels (M) forming the same code word a (Ca) is 2 and the value of the continuity factor (G) is 1.
이와 같은 경우, 코드 워드 a(Ca)에 대해 동일한 임계 범위 내의 컬러값을 갖는 픽셀의 개수는 총 2개이고, 연속되는 픽셀이 없는 것으로 해석될 수 있다. 도 9의 (a)와 같이, 코드 워드 a(Ca)에 해당되는 픽셀에 대해서는, 코드 워드 a(Ca)의 픽셀수 인자(M)의 값이 최소 임계값보다 작아, 노이즈 픽셀로 검출될 수 있다. In this case, it can be interpreted that the number of pixels having color values within the same threshold range for the code word a(Ca) is two in total, and there are no consecutive pixels. As shown in (a) of FIG. 9, for a pixel corresponding to the code word a(Ca), the value of the factor M of the number of pixels of the code word a(Ca) is smaller than the minimum threshold value, so that it can be detected as a noise pixel. there is.
도 9의 (b)와 같이, 코드 워드 b(Cb)를 형성하는 픽셀 개수가 11개이고 연속성 인자(G)가 6인 경우, 코드 워드 b(Cb)에 대해 동일한 임계 범위 내의 컬러값을 갖는 픽셀의 개수는 총 11개이고, 연속되는 픽셀의 최대 개수는 6개인 것으로 해석될 수 있다.As shown in (b) of FIG. 9, when the number of pixels constituting the code word b(Cb) is 11 and the continuity factor G is 6, pixels having color values within the same threshold range for the code word b(Cb) It can be interpreted that the number of is a total of 11, and the maximum number of consecutive pixels is 6.
도 9의 (b)와 같이, 코드 워드 b(Cb)에 해당되는 픽셀에 대해서는, 코드 워드 b의 픽셀수 인자(M)의 값이 최대 임계값보다 크고 연속성 인자(G)의 값이 연속성 인자(G)에 대한 임계값보다 크므로, 배경으로 검출될 수 있다.As shown in (b) of FIG. 9, for a pixel corresponding to code word b(Cb), the value of the factor M of the number of pixels of code word b is greater than the maximum threshold and the value of the continuity factor G is the continuity factor Since it is greater than the threshold for (G), it can be detected as background.
도 9의 (c)와 같이, 코드 워드 c(Cc)를 형성하는 픽셀 개수가 5개이고 연속성 인자(G)가 4인 경우, 코드 워드 c(Cc)에 대해 동일한 임계 범위 내의 컬러값을 갖는 픽셀의 개수는 총 5개이고, 연속되는 픽셀의 최대 개수는 4개인 것으로 해석될 수 있다.As shown in (c) of FIG. 9, when the number of pixels constituting the code word c(Cc) is 5 and the continuity factor G is 4, pixels having color values within the same threshold range for the code word c(Cc) It can be interpreted that the number of is a total of 5, and the maximum number of consecutive pixels is 4.
도 9의 (c)와 같이, 코드 워드 c(Cc)에 해당되는 픽셀에 대해서는, 코드 워드 c(Cc)의 픽셀수 인자(M)의 값이 최대 임계값보다 크고 연속성 인자(G)의 값이 임계값보다 크므로, 배경으로 검출될 수 있다.As shown in (c) of FIG. 9, for a pixel corresponding to the code word c(Cc), the value of the factor M of the number of pixels of the code word c(Cc) is greater than the maximum threshold value and the value of the continuity factor G Since it is greater than this threshold, it can be detected as background.
그러나, 도 9의 (d)와 같이, 코드 워드 d(Cd)를 형성하는 픽셀 개수가 5개이고 연속성 인자(G)가 1인 경우, 코드 워드 d(Cd)에 대해 동일한 임계 범위 내의 컬러값을 갖는 픽셀의 개수는 총 5개이고, 연속되는 픽셀의 최대 개수는 1로 연속되는 픽셀이 없는 것으로 해석될 수 있다.However, as shown in (d) of FIG. 9, when the number of pixels constituting the code word d(Cd) is 5 and the continuity factor G is 1, a color value within the same threshold range for the code word d(Cd) The total number of pixels is 5, and the maximum number of consecutive pixels is 1, which can be interpreted as no consecutive pixels.
도 9의 (d)와 같이, 코드 워드 d(Cd)에 해당되는 픽셀에 대해서는, 코드 워드 d의 픽셀수 인자(M)가 최대 임계값보다 크나, 연속성 인자(G)가 임계값보다 작으므로, 노이즈로 검출될 수 있다.As shown in (d) of FIG. 9, for a pixel corresponding to code word d(Cd), the factor M of the number of pixels of code word d is greater than the maximum threshold value, but the continuity factor G is less than the threshold value. , can be detected as noise.
이와 같이, 본 발명에서 노이즈 픽셀을 추출하는 단계(S300)는 도 10에 도시된 알고리즘 6와 같이 구현될 수 있다.As such, in the present invention, the step of extracting a noise pixel (S300) may be implemented as
도 10에서, Thmin은 코드워드의 픽셀수 인자(M)에 대한 최소 임계값을 나타내고, Thmax는 코드워드의 픽셀수 인자(M)에 대한 최대 임계값을 나타내고, ThG는 코드워드의 연속성 인자(G)에 대한 임계값을 나타낸다.10, Thmin represents the minimum threshold for the pixel number factor (M) of the codeword, Thmax represents the maximum threshold value for the pixel number factor (M) of the codeword, and ThG represents the continuity factor of the codeword ( Indicates the threshold for G).
이와 같이, 각 이미지 프레임에서 각 위치별 픽셀에 대해 노이즈를 추출할 수 있다.In this way, noise can be extracted for each pixel at each position in each image frame.
이하에서는 실제 타임 랩스 영상을 이용하여 노이즈를 추출한 일례를 도 11 내지 도 13을 참조하여 설명한다.Hereinafter, an example of extracting noise using an actual time-lapse image will be described with reference to FIGS. 11 to 13 .
도 11은 노이즈 추출의 대상이 되는 타임 랩스 영상의 일례이고, 도 12는 도 11의 t11 이미지 프레임에서 추출되는 노이즈 픽셀의 일례를 도시한 것이다.FIG. 11 is an example of a time-lapse video subject to noise extraction, and FIG. 12 illustrates an example of noise pixels extracted from the t11 image frame of FIG. 11 .
도 13의 (a)는 도 11의 t11 이미지 프레임에 대해 슈퍼 픽셀이 생성된 일례를 도시한 것이고, 도 13의 (b)는 도 13의 (a)에 도시된 복수의 슈퍼 픽셀 중 노이즈 영역으로 결정된 슈퍼 픽셀의 일례를 도시한 것이고, 도 14는 도 11의 t11 이미지 프레임에서 노이즈가 제거된 일례를 도시한 것이다.13(a) shows an example in which super pixels are generated for the t11 image frame of FIG. 11, and FIG. 13(b) shows a noise area among a plurality of super pixels shown in FIG. An example of the determined super pixel is shown, and FIG. 14 shows an example in which noise is removed from the t11 image frame of FIG. 11 .
도 11에서는 총 50개의 이미지 프레임을 갖는 식물 관찰에 관한 타임 랩스 영상 중 일부인 t=1, 11, 21, 31, 41에 대한 이미지 프레임을 도시하였다. 여기서, t11 시점에서의 이미지 프레임에 곤충이 노이즈로 촬영된 경우를 일례로 도시하였다.In FIG. 11, image frames for t=1, 11, 21, 31, and 41, which are part of time-lapse images related to plant observation having a total of 50 image frames, are shown. Here, as an example, a case in which an insect is photographed with noise in an image frame at a time point t11 is illustrated.
본 발명은 식물 관찰 영상에서 갑자기 나타났다가 사라지는 곤충과 같은 노이즈를 감지하여 곤충이 촬영된 부분을 삭제하고 삭제된 부분을 시계열적으로 이웃한 이미지 프레임을 이용하여 인페인팅할 수 있다. The present invention detects noise, such as insects that suddenly appear and disappear in a plant observation image, deletes an insect photographed portion, and inpaints the deleted portion using time-sequentially adjacent image frames.
이를 위해, 50개의 이미지 프레임을 이용하여 코드북을 생성 및 수정하고, 생성된 코드북을 각 이미지 프레임에 적용하여 각 이미지 프레임으로부터 노이즈 픽셀을 검출할 수 있다.To this end, a codebook can be generated and modified using 50 image frames, and noise pixels can be detected from each image frame by applying the generated codebook to each image frame.
도 12의 (a)에 도시된 바와 같이, 본 발명은 노이즈 픽셀을 추출하는 단계(S300)에서, 생성된 코드북을 t11 시점의 이미지 프레임에 대해 적용하여, 노이즈 픽셀을 추출할 수 있다. As shown in (a) of FIG. 12, in the step of extracting the noise pixels (S300), the generated codebook may be applied to the image frame at time t11 to extract the noise pixels.
도 12의 (a)에서 볼 수 있듯이 우측 하단의 곤충 영역이 잘 검출된 것을 볼 수 있다. 그리고 꽃잎 부분도 노이즈 픽셀로 검출된 것을 알 수 있는데, 이는 시간의 흐름에 따라 바람 등에 의해 꽃잎의 가장자리 부분의 위치가 바뀌기 때문이다. As can be seen in (a) of FIG. 12, it can be seen that the insect area in the lower right corner is well detected. In addition, it can be seen that the petal part is also detected as a noise pixel, because the position of the edge part of the petal is changed by wind or the like with the passage of time.
꽃 안쪽도 노이즈 픽셀로 검출된 작은 부분들이 나타나는 것을 알 수 있다. 작은 크기의 노이즈 픽셀은 모폴로지 연산을 적용하여 제거할 수 있으며, 도 11의 (b)와 같이, 오프닝 연산을 적용하여 작은 노이즈 픽셀이 제거될 수 있다.It can be seen that small parts detected as noise pixels also appear inside the flower. Small-sized noise pixels can be removed by applying a morphology operation, and small noise pixels can be removed by applying an opening operation, as shown in FIG. 11(b).
도 13의 (a)는 t11 시점의 이미지 프레임에 대해 슈퍼 픽셀을 생성한 일례이다. 본 발명은 슈퍼 픽셀을 생성하는 단계(S400)에서 도 13의 (a)와 같이, 각 이미지 프레임에 대해 SLIC 알고리즘을 적용하여 t11 시점의 이미지 프레임과 같이 슈퍼 픽셀을 생성할 수 있다.13(a) is an example in which super pixels are generated for an image frame at time t11. In the present invention, in the step of generating a super pixel ( S400 ), as shown in (a) of FIG. 13 , the SLIC algorithm may be applied to each image frame to generate a super pixel like the image frame at time t11.
아울러, 노이즈 영역으로 결정하는 단계(S500)에서, 도 13의 (b)와 같이, 슈퍼 픽셀에서 노이즈 픽셀이 차지하는 비율이 미리 설정된 임계값 이상인 경우, 해당 슈퍼 픽셀을 노이즈 영역으로 결정할 수 있다.In addition, in the step of determining the noise area (S500), as shown in FIG. 13(b), when the ratio occupied by the noise pixel in the super pixel is equal to or greater than a preset threshold value, the corresponding super pixel may be determined as the noise area.
이후, 노이즈 영역으로 결정된 슈퍼 픽셀의 컬러는 제거되어, 도 14의 (a)에 보였던 노이즈는 제거되어, 시계열적으로 인접한 이미지 프레임의 컬러로 인페인팅되어 도 14의 (b)와 같이 노이즈가 제거된 이미지 프레임이 생성될 수 있다.Thereafter, the color of the superpixel determined as the noise area is removed, and the noise shown in FIG. 14(a) is removed, and the color of the image frame adjacent to it in time-sequentially is inpainted to remove the noise as shown in FIG. 14(b). image frames may be created.
본 발명은 타임 랩스 영상에 대해 코드북 방법을 적용하되, 새로운 구성 인자를 갖는 코드워드를 생성하고, 생성된 코드워드의 픽셀수 인자(M)와 연속성 인자(G)를 이용하여 시계열적으로 나열된 복수의 픽셀로부터 노이즈 픽셀을 검출함으로써, 상대적으로 작은 이미지 프레임을 갖는 타임 랩스 영상에서도 효율적으로 노이즈를 제거할 수 있다.The present invention applies a codebook method to a time-lapse image, generates a codeword having a new configuration factor, and uses a pixel number factor (M) and a continuity factor (G) of the generated codeword to chronologically arrange a plurality of codewords. By detecting noise pixels from the pixels of , noise can be efficiently removed even in a time-lapse image having a relatively small image frame.
본 발명의 각 실시예에 개시된 기술적 특징들은 해당 실시예에만 한정되는 것은 아니고, 서로 양립 불가능하지 않은 이상, 각 실시예에 개시된 기술적 특징들은 서로 다른 실시예에 병합되어 적용될 수 있다.The technical features disclosed in each embodiment of the present invention are not limited to the corresponding embodiment, and unless incompatible with each other, the technical features disclosed in each embodiment may be merged and applied to other embodiments.
따라서, 각 실시예에서는 각각의 기술적 특징을 위주로 설명하지만, 각 기술적 특징이 서로 양립 불가능하지 않은 이상, 서로 병합되어 적용될 수 있다.Therefore, in each embodiment, each technical feature is mainly described, but each technical feature may be merged and applied to each other unless incompatible with each other.
본 발명은 상술한 실시예 및 첨부한 도면에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자의 관점에서 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명의 범위는 본 명세서의 청구범위뿐만 아니라 이 청구범위와 균등한 것들에 의해 정해져야 한다. The present invention is not limited to the above-described embodiments and accompanying drawings, and various modifications and variations will be possible from the viewpoint of those skilled in the art to which the present invention belongs. Therefore, the scope of the present invention should be defined by not only the claims of this specification but also those equivalent to these claims.
Claims (12)
상기 적어도 하나의 코드워드 중 동일한 코드워드가 시계열적으로 연속되는 픽셀의 최대 개수를 나타내는 연속성 인자를 연산하여 상기 코드북을 수정하는 단계;
상기 각 이미지 프레임에 포함된 상기 복수의 픽셀들 중에서 상기 연속성 인자가 설정된 임계값 이하인 픽셀을 노이즈 픽셀로 추출하는 단계;
상기 각 이미지 프레임에 포함된 상기 복수의 픽셀들에 대해 미리 설정된 임계값 이하로 동일한 컬러를 갖는 픽셀들에 대해 그룹화하여 슈퍼 픽셀을 생성하는 단계;
상기 슈퍼 픽셀에서 상기 노이즈 픽셀이 차지하는 비율이 미리 설정된 임계값 이상인 경우 상기 슈퍼 픽셀을 노이즈 영역으로 결정하는 단계; 및
상기 노이즈 영역으로 결정된 슈퍼 픽셀을 시계열적으로 인접한 이미지 프레임의 동일한 부분에 위치하는 슈퍼 픽셀의 컬러로 대체하는 단계;를 더 포함하며,
상기 적어도 하나의 코드워드 각각은 각 픽셀에 포함된 적어도 한 컬러 성분에 대한 최소값과 최대값을 나타내는 컬러 인자, 동일한 코드워드를 구성하는 픽셀의 개수를 나타내는 픽셀수 인자 및 상기 연속성 인자를 포함하는 타임 랩스 영상의 노이즈 제거 방법.generating a codebook including at least one codeword for a plurality of pixels arranged in chronological order according to positions of each image frame included in an image captured at preset time intervals;
modifying the codebook by calculating a continuity factor indicating a maximum number of pixels in which the same codeword among the at least one codeword is time-sequentially consecutive;
extracting, as noise pixels, pixels having the continuity factor equal to or less than a set threshold value among the plurality of pixels included in each image frame;
generating a super pixel by grouping pixels having the same color with a predetermined threshold value or less for the plurality of pixels included in each image frame;
determining the super pixel as a noise area when a ratio occupied by the noise pixel in the super pixel is equal to or greater than a predetermined threshold value; and
Replacing the superpixel determined as the noise area with the color of a superpixel located in the same part of an adjacent image frame in time series;
Each of the at least one codeword includes a color factor representing minimum and maximum values of at least one color component included in each pixel, a pixel number factor representing the number of pixels constituting the same codeword, and the continuity factor. How to remove noise from lapse video.
상기 코드북을 생성하는 단계에서,
상기 코드북은 상기 각 이미지 프레임의 각 위치별로 생성되되,
상기 적어도 하나의 코드워드는 상기 각 이미지 프레임의 동일한 위치에서 시계열적으로 나열된 픽셀들에 대한 정보가 그룹화되어 저장되는 타임 랩스 영상의 노이즈 제거 방법. According to claim 1,
In the step of generating the codebook,
The codebook is generated for each position of each image frame,
Wherein the at least one codeword is a method of removing noise of a time-lapse image in which information on pixels sequentially listed in time series at the same location of each image frame is grouped and stored.
상기 코드북을 생성하는 단계에서 생성되는 상기 적어도 하나의 코드워드에는 상기 연속성 인자를 제외한 상기 컬러 인자 및 상기 픽셀수 인자가 생성되는 타임 랩스 영상의 노이즈 제거 방법.According to claim 1,
The method of removing noise from a time-lapse image, wherein the color factor and the pixel number factor excluding the continuity factor are generated in the at least one codeword generated in the step of generating the codebook.
상기 코드북을 생성하는 단계는
시계열적으로 나열된 상기 각 이미지 프레임 중 첫 번째 프레임의 각 위치별로 첫 번째 픽셀의 컬러값을 기초로 코드워드를 생성한 후,
상기 첫 번째 이후의 모든 픽셀 중 어느 하나인 현재 픽셀의 컬러값이 기생성된 제1 코드워드에 대응되는 경우 상기 현재 픽셀의 컬러값을 상기 기생성된 제1 코드워드에 업데이트하거나,
상기 현재 픽셀의 컬러값이 상기 제1 코드워드 이외의 다른 제2 코드워드에 대응되는 경우 상기 제1, 2 코드워드를 병합하거나,
상기 현재 픽셀의 컬러값과 대응되는 기생성된 코드워드가 없는 경우 새로운 코드워드를 추가하는 타임 랩스 영상의 노이즈 제거 방법.According to claim 1,
The step of generating the codebook is
After generating a codeword based on the color value of the first pixel for each position of the first frame among the image frames listed in time series,
If the color value of the current pixel, which is any one of all pixels after the first one, corresponds to the previously generated first codeword, update the color value of the current pixel to the previously generated first codeword;
When the color value of the current pixel corresponds to a second codeword other than the first codeword, the first and second codewords are merged, or
A method of removing noise from a time-lapse image in which a new codeword is added when there is no pre-generated codeword corresponding to the color value of the current pixel.
상기 현재 픽셀의 컬러값이 상기 제1 코드워드의 상기 컬러 인자의 임계값 범위 내에 포함되는 경우,
상기 현재 픽셀이 상기 제1 코드워드에 대응되는 것으로 판단하여, 상기 현재 픽셀의 컬러값을 상기 제1 코드워드의 상기 컬러 인자에 반영하고 상기 제1 코드워드의 상기 픽셀수 인자를 증가시켜 상기 제1 코드워드를 업데이트하는 타임 랩스 영상의 노이즈 제거 방법.According to claim 5,
When the color value of the current pixel is included within the threshold value range of the color factor of the first codeword,
It is determined that the current pixel corresponds to the first codeword, the color value of the current pixel is reflected in the color factor of the first codeword, and the number of pixels factor of the first codeword is increased to obtain the first codeword. 1 A method for removing noise from time-lapse video updating codewords.
상기 현재 픽셀이 상기 제1, 2 코드워드에 대응되는 경우,
상기 제1, 2 코드워드 중 어느 하나의 코드워드로 병합하되, 나머지 하나의 코드워드는 무효화시키고,
상기 나머지 하나의 코드워드에 포함된 컬러 인자값을 상기 어느 하나의 코드워드에 반영하는 타임 랩스 영상의 노이즈 제거 방법.According to claim 5,
When the current pixel corresponds to the first and second codewords,
Merge into any one codeword of the first and second codewords, but invalidate the other codeword,
A method of removing noise from a time-lapse image in which a color factor value included in the other codeword is reflected in the one codeword.
상기 코드북을 생성하는 단계에서 생성되는 상기 적어도 하나의 코드워드는 복수 개이고,
상기 코드북을 수정하는 단계에서,
현재 픽셀의 코드워드가 이전 픽셀에 대한 이전 코드워드와 매칭되면, 동일한 코드워드가 연속되는 속성으로 정의되는 현재의 인접 길이를 증가시키고,
상기 현재의 인접 길이가 상기 이전 코드워드의 연속성 인자보다 큰 경우, 상기 이전 코드워드의 상기 연속성 인자를 상기 현재의 인접 길이로 갱신하는 타임 랩스 영상의 노이즈 제거 방법.According to claim 1,
The at least one codeword generated in the step of generating the codebook is plural,
In the step of modifying the codebook,
If the codeword of the current pixel matches the previous codeword for the previous pixel, then increment the current contiguous length defined by the property that the same codeword is contiguous;
When the current contiguous length is greater than the continuity factor of the previous codeword, updating the continuity factor of the previous codeword with the current contiguous length.
상기 노이즈 픽셀을 추출하는 단계에서는
현재 픽셀에 대한 코드워드의 상기 픽셀수 인자 및 상기 연속성 인자가 미리 설정된 임계값 이하인 경우 상기 현재 픽셀을 노이즈로 추출하는 타임 랩스 영상의 노이즈 제거 방법.According to claim 1,
In the step of extracting the noise pixel,
A method for removing noise from a time-lapse image in which the current pixel is extracted as noise when the pixel number factor and the continuity factor of a codeword for the current pixel are equal to or less than a preset threshold.
상기 노이즈 픽셀을 추출하는 단계에서는
현재 픽셀에 대한 상기 코드워드의 상기 픽셀수 인자가 미리 설정된 상기 픽셀수 인자에 대한 최소 임계값 이하인 경우, 상기 현재 픽셀을 노이즈로 검출하고,
상기 현재 픽셀에 대한 상기 코드워드의 상기 픽셀수 인자가 미리 설정된 상기 픽셀수 인자에 최대 임계값보다 큰 경우, 상기 현재 픽셀을 배경으로 분류하고,
배경으로 분류된 상기 현재 픽셀에 대한 상기 코드워드의 상기 연속성 인자가 미리 설정된 연속성 인자에 대한 임계값보다 작은 경우 노이즈로 검출하고, 상기 연속성 인자에 대한 임계값보다 큰 경우 배경으로 검출하는 타임 랩스 영상의 노이즈 제거 방법.According to claim 9,
In the step of extracting the noise pixel,
If the pixel number factor of the codeword for a current pixel is less than or equal to a preset minimum threshold for the pixel number factor, detecting the current pixel as noise;
classifying the current pixel as a background when the pixel count factor of the codeword for the current pixel is greater than a preset maximum threshold for the pixel count factor;
When the continuity factor of the codeword for the current pixel classified as background is smaller than a preset continuity factor threshold, it is detected as noise, and when it is greater than the continuity factor threshold, time-lapse video is detected as background. of noise removal method.
상기 슈퍼 픽셀의 컬러로 대체하는 단계에서,
상기 시계열적으로 인접한 이미지 프레임의 동일한 부분에 위치하는 슈퍼 픽셀은 배경 영역으로 결정된 슈퍼 픽셀인 타임 랩스 영상의 노이즈 제거 방법.According to claim 1,
In the step of replacing with the color of the super pixel,
The method of removing noise from a time-lapse image wherein the superpixels located in the same part of the time-sequentially adjacent image frames are superpixels determined as a background area.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210072432A KR102546070B1 (en) | 2021-06-03 | 2021-06-03 | Method for removing noise from time lapse video |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210072432A KR102546070B1 (en) | 2021-06-03 | 2021-06-03 | Method for removing noise from time lapse video |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220163811A KR20220163811A (en) | 2022-12-12 |
KR102546070B1 true KR102546070B1 (en) | 2023-06-20 |
Family
ID=84391467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210072432A KR102546070B1 (en) | 2021-06-03 | 2021-06-03 | Method for removing noise from time lapse video |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102546070B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019021243A (en) * | 2017-07-21 | 2019-02-07 | Kddi株式会社 | Object extractor and super pixel labeling method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101215987B1 (en) | 2008-12-22 | 2012-12-28 | 한국전자통신연구원 | Apparatus for separating foreground from back ground and method thereof |
KR101105675B1 (en) * | 2009-01-30 | 2012-01-18 | 서강대학교산학협력단 | Method and apparatus of inpainting for video data |
KR20120060458A (en) * | 2010-12-02 | 2012-06-12 | 한국전자통신연구원 | Method of tracking object and apparatus for the same |
-
2021
- 2021-06-03 KR KR1020210072432A patent/KR102546070B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019021243A (en) * | 2017-07-21 | 2019-02-07 | Kddi株式会社 | Object extractor and super pixel labeling method |
Non-Patent Citations (1)
Title |
---|
박상현, 갯벌 영상에서 객체 검출을 위한 배경 모델링, 한국전자통신학회 논문지, June 2020, vol.15, no.3, pp. 563-572(2020.6.30.) 1부.* |
Also Published As
Publication number | Publication date |
---|---|
KR20220163811A (en) | 2022-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020238560A1 (en) | Video target tracking method and apparatus, computer device and storage medium | |
CN112261477B (en) | Video processing method and device, training method and storage medium | |
CN112541483B (en) | Dense face detection method combining YOLO and blocking-fusion strategy | |
JP5493709B2 (en) | Video editing device | |
CN111209897B (en) | Video processing method, device and storage medium | |
CN105989358A (en) | Natural scene video identification method | |
Deng et al. | Learning from images: A distillation learning framework for event cameras | |
CN110866473B (en) | Target object tracking detection method and device, storage medium and electronic device | |
CN111881904A (en) | Blackboard writing recording method and system | |
Wang et al. | Single-column CNN for crowd counting with pixel-wise attention mechanism | |
KR102546070B1 (en) | Method for removing noise from time lapse video | |
Ghorpade et al. | Extracting text from video | |
JP2005276188A (en) | Handwritten character removing image processor and handwritten character removing image processing method | |
KR20210028966A (en) | Method and apparatus for disease classification of plant leafs | |
KR102026280B1 (en) | Method and system for scene text detection using deep learning | |
CN112686828B (en) | Video denoising method, device, equipment and storage medium | |
JP7447908B2 (en) | Information processing device, information processing method, and program | |
CN115049963A (en) | Video classification method and device, processor and electronic equipment | |
Baabou et al. | A comparative study and state-of-the-art evaluation for pedestrian detection | |
CN114494887A (en) | Remote sensing image classification method and device, computer equipment and readable storage medium | |
CN114189754A (en) | Video plot segmentation method and system | |
CN113409327A (en) | Example segmentation improvement method based on ordering and semantic consistency constraint | |
CN112613516A (en) | Semantic segmentation method for aerial video data | |
CN114387311B (en) | LKJ file and locomotive video automatic time setting method, device and computer equipment | |
CN117495915B (en) | Multi-target tracking method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |