KR102543025B1 - 이미지 데이터의 포맷 변환 방법 및 장치 - Google Patents

이미지 데이터의 포맷 변환 방법 및 장치 Download PDF

Info

Publication number
KR102543025B1
KR102543025B1 KR1020220173979A KR20220173979A KR102543025B1 KR 102543025 B1 KR102543025 B1 KR 102543025B1 KR 1020220173979 A KR1020220173979 A KR 1020220173979A KR 20220173979 A KR20220173979 A KR 20220173979A KR 102543025 B1 KR102543025 B1 KR 102543025B1
Authority
KR
South Korea
Prior art keywords
image data
images
format
straight lines
straight line
Prior art date
Application number
KR1020220173979A
Other languages
English (en)
Inventor
정준
Original Assignee
정준
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 정준 filed Critical 정준
Priority to KR1020220173979A priority Critical patent/KR102543025B1/ko
Priority to KR1020230047066A priority patent/KR20230163927A/ko
Application granted granted Critical
Publication of KR102543025B1 publication Critical patent/KR102543025B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/02Affine transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/001
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)

Abstract

실시예들은 입력 장치로부터 제1 포맷 이미지 데이터를 수신하는 동작; 상기 제1 포맷 이미지 데이터의 표지를 결정하는 동작; 사용자의 생체 정보를 기초로 상기 제1 포맷 이미지 데이터를 구성하는 이미지들의 밝기를 보정하는 동작; 상기 이미지들에 존재하는 직선을 탐색하는 동작; 상기 직선을 이용하여 상기 이미지들 각각에 대하여 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하는 직선 쌍들을 결정하는 동작; 상기 직선 쌍들 중 가장 길이가 긴 직선 쌍을 상기 이미지들 각각의 기준 직선 쌍으로 결정하는 동작; 상기 기준 직선 쌍을 이용하여 상기 이미지들의 기울기를 보정하는 동작; 상기 기준 직선 쌍을 이용하여 상기 이미지들의 사이즈를 보정하는 동작; 및 상기 제1 포맷 이미지 데이터를 제2 포맷 이미지 데이터로 변환하는 동작 포함하는 이미지 데이터의 포맷 변환 방법을 제공한다.

Description

이미지 데이터의 포맷 변환 방법 및 장치 {METHOD AND DEVICE FOR CONVERTING FORMAT OF IMAGE DATA}
개시되는 실시예들은 특정 포맷을 가지는 이미지 데이터를 처리하여 다른 포맷을 가지는 이미지 데이터로 변환하는 방법에 대한 것이다.
오래된 서적 등의 보관을 함에 있어서 보관 장소의 상태에 따라 훼손이 발생할 수 있고, 보관을 위해서는 물리적인 공간이 많이 필요한 한계가 있다.
이러한 이유로 많은 경우에 오래된 서적 등을 디지털화 하여 보관하고 있다.
하지만, 오래된 서적 등을 디지털화 하는 경우 이미지 획득 과정에서 이미지가 돌아가거나 명암이 흐리게 표현되는 등의 문제점이 발생할 수 있다.
이러한 문제점을 해결하기 위해 오래된 서적 등을 디지털화 하는 경우 이미지를 처리하여 보정한 후 보관하기 용이한 데이터 포맷으로 변환할 필요가 있다.
실시예들은, 특정 포맷의 이미지 데이터에 표지를 추가하고, 이미지 데이터에 포함된 이미지를 보정하고, 다른 포맷의 이미지 데이터로 변환하는 방법을 제공할 수 있다.
실시예들에서 이루고자 하는 기술적 과제들은 이상에서 언급한 사항들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 이하 설명할 다양한 실시예들로부터 당해 기술분야에서 통상의 지식을 가진 자에 의해 고려될 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 입력 장치로부터 제1 포맷 이미지 데이터를 수신하는 동작; 제1 포맷 이미지 데이터의 표지를 결정하는 동작; 사용자의 생체 정보를 기초로 제1 포맷 이미지 데이터를 구성하는 이미지들의 밝기를 보정하는 동작; 이미지들에 존재하는 직선을 탐색하는 동작; 직선을 이용하여 이미지들 각각에 대하여 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하는 직선 쌍들을 결정하는 동작; 직선 쌍들 중 가장 길이가 긴 직선 쌍을 이미지들 각각의 기준 직선 쌍으로 결정하는 동작; 기준 직선 쌍을 이용하여 이미지들의 기울기를 보정하는 동작; 기준 직선 쌍을 이용하여 이미지들의 사이즈를 보정하는 동작; 및 제1 포맷 이미지 데이터를 제2 포맷 이미지 데이터로 변환하는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 제1 포맷 이미지 데이터의 제목을 식별하는 동작; 제목에 기초하여 제목의 표지를 탐색하는 동작; 및 제목의 표지를 제1 포맷 이미지 데이터의 표지로 결정하는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 제1 포맷 이미지 데이터에 제목의 표지가 포함되어 있는지를 결정하는 동작; 및 제목의 표지 포함여부에 기초하여 제목의 표지를 외부 데이터로부터 내려 받는 동작을 더 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 이미지의 전체 픽셀에 대하여 명암대비를 높이는 동작; 제1 포맷 이미지 데이터에 포함된 이미지 내 윤곽선(Edge)를 탐색하는 동작; 윤곽선 부분에 배치된 픽셀들과 픽셀들에 인접한 픽셀들 간의 명암대비를 높이는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 사용자의 생체 정보는 사용자의 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 포함하고, 이미지의 전체 픽셀에 대하여 명암대비를 높이는 동작은, 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 측정하는 동작; 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 기초로 색상 기준 점수를 계산하는 동작; 및 색상 기준 점수를 기초로 이미지의 전체 픽셀에 대하여 명암대비를 높이는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 기준 직선 쌍의 기울어진 각도를 산출하는 동작; 및 산출한 각도만큼 이미지들을 회전시키는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 이미지들의 기준 직선 쌍의 길이를 비교하여 차이 값을 산출하는 동작; 차이 값에 기초하여 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍을 대각 직선 쌍으로 결정하는 동작; 및 대각 기준 직선 쌍을 포함한 이미지 내 다른 직선 중 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하고 대각 기준 직선 쌍 다음으로 길이가 긴 직선 쌍을 기준 직선 쌍으로 재결정하는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 이미지들의 기준 직선 쌍의 기울기를 비교하여 차이 값을 산출하는 동작; 차이 값이 기초하여 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍을 대각 직선 쌍으로 결정하는 동작; 및 대각 기준 직선 쌍을 포함한 이미지 내 다른 직선 중 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하고 대각 기준 직선 쌍 다음으로 길이가 긴 직선 쌍을 기준 직선 쌍으로 재결정하는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은, 상기 이미지들의 기준 직선 쌍을 구성하는 직선 중 대표 기준 직선을 결정하는 동작; 및 상기 대표 기준 직선의 길이에 기초하여 상기 이미지들의 사이즈를 보정하는 동작을 포함할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은 이미지 데이터의 제목을 이용하여 이미지 데이터의 표지를 결정한 후 다른 포맷의 데이터로 변환함으로써 사용자가 이미지 데이터를 파악함에 있어 편의를 제공할 수 있다.
실시예들에 따르면, 이미지 데이터의 포맷 변환 방법은 이미지 데이터에 포함된 이미지들의 밝기, 기울기, 또는 사이즈 중 적어도 어느 하나를 보정한 후 다른 포맷의 데이터로 변환함으로써 사용자가 이미지 데이터를 보는데 있어 편의를 제공할 수 있다.
실시예들로부터 얻을 수 있는 효과들은 이상에서 언급된 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 이하의 상세한 설명을 기반으로 당해 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다.
실시예들에 대한 이해를 돕기 위해 상세한 설명의 일부로 포함된, 첨부 도면은 다양한 실시예들을 제공하고, 상세한 설명과 함께 다양한 실시예들의 기술적 특징을 설명한다.
도 1은 일 실시예에 따른 이미지 데이터의 포맷 변환 시스템을 도시한 도면이다.
도 2는 일 실시예에 따른 이미지 데이터의 포맷 변환 방법을 나타내는 흐름도이다.
도 3은 일 실시예에 따른 이미지 데이터의 표지를 결정하는 방법을 도시한 도면이다.
도 4는 일 실시예에 따른 이미지의 밝기를 보정하는 방법을 도시한 도면이다.
도 5은 일 실시예에 따른 이미지의 기울기를 보정하는 방법을 도시한 도면이다.
도 6은 일 실시예에 따른 이미지의 사이즈를 보정하는 방법을 도시한 도면이다.
도 7은 일 실시예에 따른 이미지 데이터의 포맷 변환 방법을 수행하는 사용자 단말의 구성을 도시한 도면이다.
이하의 실시예들은 실시예들의 구성요소들과 특징들을 소정 형태로 결합한 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려될 수 있다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 다양한 실시예들을 구성할 수도 있다. 다양한 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다.
도면에 대한 설명에서, 다양한 실시예들의 요지를 흐릴 수 있는 절차 또는 단계 등은 기술하지 않았으며, 당해 기술분야에서 통상의 지식을 가진 자의 수준에서 이해할 수 있을 정도의 절차 또는 단계는 또한 기술하지 아니하였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함(comprising 또는 including)"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "...부", "...기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사 관련어는 다양한 실시예들을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.
실시예들은 입력 장치로부터 획득한 특정 포맷을 가지는 복수의 이미지로 구성된 이미지 데이터를 처리하여 다른 포맷을 가지는 이미지 데이터로 변환하는 방법에 관한 것이다. 실시예들에 따른 포맷 변환 방법은 이미지 데이터의 제목을 이용하여 이미지 데이터를 구성하는 복수의 이미지들 중 이미지 데이터의 표지로 사용할 이미지를 결정할 수 있다. 실시예들에 따른 포맷 변환 방법은 이미지 데이터를 구성하는 복수의 이미지들에 대하여 밝기를 보정함으로써 이미지들의 선명도를 향상시킬 수 있다. 실시예들에 따른 포맷 변환 방법은 이미지 데이터를 구성하는 복수의 이미지들을 회전시켜 이미지의 기울기를 보정할 수 있다. 실시예들에 따른 포맷 변환 방법은 이미지 데이터를 구성하는 복수의 이미지들의 사이즈를 보정하여 모두 동일한 사이즈를 가지는 이미지로 보정할 수 있다. 실시예들에 따른 포맷 변환 방법은 보정된 이미지들을 다른 포맷을 가지는 이미지로 변환하여 사용자가 원하는 포맷을 가지는 이미지 데이터로 변환할 수 있다.
이하, 다양한 실시예들에 따른 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 다양한 실시예들의 예시적인 실시형태를 설명하고자 하는 것이며, 유일한 실시형태를 나타내고자 하는 것이 아니다.
또한, 다양한 실시예들에서 사용되는 특정(特定) 용어들은 다양한 실시예들의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 다양한 실시예들의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
도 1은 실시예들에 따른 이미지 데이터의 포맷 변환 시스템을 도시한 도면이다.
도 1을 참조하면, 실시예들에 따른 이미지 데이터의 포맷 변환 시스템은 입력 장치(100) 및 사용자 단말(200)을 포함할 수 있다. 입력 장치(100) 및 사용자 단말(200)은 별개의 장치로 구분될 수 있으며, 경우에 따라 하나의 장치로 구성될 수도 있다.
실시예들에 따른 입력 장치(100)는 스캐너, 카메라, 스마트폰, 태블릿 PC 등 실물을 캡처하여 디지털 이미지화 할 수 있는 모바일 또는 비 모바일 장치를 모두 포함할 수 있다.
실시예들에 따른 입력 장치(100)는 실시예들에 따른 입력 장치(100)는 종이 등의 형태로 된 문서를 캡처하여 이미지 데이터로 변환할 수 있고, 획득한 이미지 데이터를 네트워크를 통해 사용자에게 제공할 수 있다.
실시예들에 따른 이미지 데이터는 실물을 디지털 이미지화 한 데이터로서, BMP(Bitmap), JPEG(Joint Picture Experts Group), GIF(Graphics Interchange Format), PNG(Portable Network Graphics), TIFF(Tag Image File Format), PDF(Portable Document Format), Raw 등이 포함되나 이에 한정되지는 않는다.
실시예들에 따른 네트워크는 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크의 일 예에는 RF, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5GPP(5rd Generation Partnership Project) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스 (Bluetooth) 네트워크, NFC 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다. 예를 들어, 입력 장치(100)는 카메라를 통해 획득한 이미지 데이터를 동일한 WI-FI를 사용하고 있는 사용자 단말(200)로 전송할 수 있다.
실시예들에 따른 사용자 단말(200)은 스마트폰, 태블릿 PC, 데스크탑, 랩탑 등 이미지 데이터를 처리할 수 있는 프로세서를 구비한 모바일 또는 비 모바일 컴퓨팅 장치를 모두 포함할 수 있다.
실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 복수의 이미지들 처리하여 이미지 데이터의 포맷을 변환할 수 있다.
예를 들어, 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터의 제목을 이용하여 이미지 데이터를 구성하는 복수의 이미지들 중 표지 이미지를 결정할 수 있다.
또 다른 예로, 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 복수의 이미지들의 밝기를 보정하여 이미지들의 전체 영역에서의 명암대비를 높일 수 있다.
또 다른 예로, 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 복수의 이미지들의 윤곽선을 탐색하고, 탐색한 윤곽선 부분에 배치된 픽셀들과 윤곽선 부분에 픽셀들에 인접한 픽셀들 간의 명암대비를 높일 수 있다.
또 다른 예로, 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 복수의 이미지들에 존재하는 직선을 탐색하고, 탐색한 직선의 기울기에 기초하여 이미지들을 회전할 수 있다.
또 다른 예로, 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 복수의 이미지들에 존재하는 직선을 탐색하고, 각 이미지들의 직선의 길이를 서로 비교하여 이미지들의 사이즈를 보정할 수 있다.
도 2는 일 실시예에 따른 이미지 데이터의 포맷 변환 방법을 나타내는 흐름도이다.
도 2를 참조하면, 동작 201에서, 실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 제1 포맷 이미지 데이터를 수신할 수 있다. 여기에서, 제1 포맷 이미지 데이터는 복수의 디지털화 된 이미지들로 구성된 데이터 일 수 있다. 보다 구체적으로, 제1 포맷 이미지 데이터는 입력 장치(100)를 통해 종이로 된 문서를 페이지 별로 스캔 또는 촬영하여 획득한 복수의 디지털 이미지들로 구성된 데이터일 수 있다.
동작 202에서, 실시예들에 따른 사용자 단말(200)은 입력장치(100)로부터 수신한 제1 포맷 이미지 데이터의 파일명, 폴더명 등을 통해 제1 포맷 이미지 데이터의 제목을 식별하고, 식별한 제목을 이용하여 제1 포맷 이미지 데이터를 구성하는 이미지들 중 표지가 포함되어 있는지 여부를 결정할 수 있다.
제1 포맷 이미지 데이터를 구성하는 이미지들 중 제1 포맷 이미지 데이터의 표지가 포함되어 있지 않은 경우, 동작 203에서, 실시예들에 따른 사용자 단말(200)은 네트워크를 통해 웹사이트로부터 제1 포맷 이미지 데이터의 표지를 검색하고, 검색한 표지를 내려 받을 수 있다.
동작 204에서, 실시예들에 따른 사용자 단말(200)은 제1 포맷 이미지 데이터에 포함된 표지 이미지 또는 네트워크를 통해 웹사이트로부터 내려 받은 표지 이미지를 제1 포맷 이미지 데이터의 표지로 결정할 수 있다. 이 때, 사용자 단말(200)은 동작 202에서 식별한 제목을 포함하는 표지를 앞표지 썸네일로 추가할 수 있다. 또는, 사용자 단말(200)은 제1 포맷 이미지 데이터를 구성하는 이미지들 중 가장 앞에 배치된 페이지를 앞표지로, 가장 뒤에 배치된 페이지를 뒤표지로 결정할 수 있다.
동작 205에서 실시예들에 따른 사용자 단말(200)은 제1 포맷 이미지 데이터를 구성하는 이미지들에 포함된 픽셀들의 밝기를 보정하여 명암대비를 높일 수 있다. 보다 구체적으로, 사용자 단말(200)은 이미지들 각각에 포함된 픽셀들 중 밝은 픽셀은 더 밝게, 어두운 픽셀은 더 어둡게 만들어 전체적인 명암대비를 높일 수 있다. 또한, 사용자 단말(200)은 이미지들에 포함된 픽셀들 중 경계를 이루는 부분에 배치된 픽셀들 즉, 윤곽선을 탐색하고, 탐색된 윤곽선에 배치된 픽셀들과 윤곽선에 배치된 픽셀들에 인접한 픽셀들 간의 밝기 차이를 높여 이미지들에 포함된 객체의 선명도를 높일 수 있다.
동작 206에서 실시예들에 따른 사용자 단말(200)은 제1 포맷 이미지 데이터를 구성하는 이미지들을 회전시킴으로써 기울기를 보정할 수 있다. 보다 구체적으로, 사용자 단말(200)은 이미지들 각각에 포함된 직선을 탐색하고, 탐색된 직선의 기울기를 이용하여 이미지들을 회전시킴으로써 기울어진 이미지들의 기울기를 보정할 수 있다.
동작 207에서 실시예들에 따른 사용자 단말(200)은 제1 포맷 이미지 데이터를 구성하는 이미지들의 사이즈를 보정할 수 있다. 보다 구체적으로, 사용자 단말(200)은 이미지들 각각에 포함된 직선을 탐색하고, 탐색된 직전의 길이를 비교하여 가장 긴 직선을 기준으로 모든 이미지들을 자름으로써 모든 이미지들의 사이즈가 동일해지도록 사이즈를 보정할 수 있다.
동작 208에서, 실시예들에 따른 사용자 단말(200)은 동작 202 내지 207에서 처리된 제1 포맷 이미지 데이터를 제2 포맷 이미지 데이터로 변환할 수 있다. 여기서, 제2 포맷 이미지 데이터는 제1 포맷 이미지 데이터를 구성하는 이미지들을 제1 포맷과 상이한 포맷으로 변환한 이미지들로 구성된 데이터일 수 있다.
도 3은 일 실시예에 따른 이미지 데이터의 표지를 결정하는 방법을 도시한 도면이다.
도 3을 참조하면, 실시예들에 따른 입력 장치(100)가 획득한 제1 포맷 이미지 데이터는 서적으로부터 획득한 이미지들(301 내지 305)로 구성된 이미지 데이터(300)일 수 있다.
실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 이미지 데이터(300)를 수신할 수 있다. 사용자 단말(200)은 수신한 이미지 데이터(300)의 제목을 식별할 수 있다. 이 때, 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터(300)의 폴더명 또는 파일명으로부터 이미지 데이터(300)의 제목을 식별할 수 있다.
실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터(300)의 제목을 식별하고, 식별한 제목을 이용하여 이미지 데이터(300)를 구성하는 이미지들(301 내지 305) 중 어느 하나를 표지로 설정할 수 있다. 이 때, 이미지 데이터(300)를 구성하는 이미지들(301 내지 305) 중 식별한 제목을 포함하는 이미지가 복수인 경우, 사용자 단말(200)은 미리 학습된 모델을 이용하여 이미지 데이터(300)를 구성하는 이미지들(301 내지 305) 중 표지로 사용될 이미지를 탐색하여 이미지 데이터(300)의 표지로 설정할 수 있다.
실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터(300)의 폴더명 또는 파일명으로부터 이미지 데이터(300)의 제목을 식별할 수 없는 경우, 미리 학습된 모델을 이용하여 이미지 데이터(300)를 구성하는 이미지들(301 내지 305) 중 표지로 사용될 이미지를 탐색하여 이미지 데이터(300)의 표지로 설정할 수 있다.
실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터(300)의 폴더명 또는 파일명으로부터 이미지 데이터(300)의 제목을 식별하였으나, 이미지 데이터(300)를 구성하는 이미지들(301 내지 305) 중 표지로 사용될 이미지를 탐색할 수 없는 경우 네트워크를 통해 웹사이트 등으로부터 이미지 데이터(300)의 표지로 사용될 이미지를 탐색하여 내려 받은 후 이미지 데이터(300)의 표지로 설정할 수 있다.
예를 들어, 사용자 단말(200)이 입력 장치(100)로부터 수신한 이미지 데이터(300)의 폴더명 또는 파일명이 "TITLE"이면서 이미지 데이터(300)을 구성하는 이미지들(301 내지 305) 중 "TITLE"을 포함하는 이미지(301)가 존재하는 경우 이미지(301)를 이미지 데이터(300)의 표지로 설정할 수 있다. 이미지 데이터(300)를 구성하는 이미지들(301 내지 305) 중 이미지(301) 이외에 "TITLE"이라는 문자를 포함하는 다른 이미지(303)가 존재할 수 있다. 이 경우, 사용자 단말(200) 미리 학습된 모델을 이용하여 이미지들(301 및 303) 중 표지로 사용될 이미지(301)를 결정할 수 있다. 이 때, 미리 학습된 모델은 표지로 사용되는 이미지에 표시되는 텍스트의 크기, 텍스트의 배치, 구성요소 등을 통해 표지로 사용되는 이미지를 결정할 수 있도록 학습될 수 있다. 또 다른 예로, 사용자 단말(200)이 입력 장치(100)로부터 수신한 이미지 데이터(300)의 폴더명 또는 파일명으로부터 이미지 데이터(300)의 제목을 식별할 수 없는 경우, 사용자 단말(300)은 미리 학습된 모델을 이용하여 이미지 데이터를 구성하는 이미지들(301 내지 305)의 이미지 배치, 텍스트 배치, 텍스트 크기 등의 요소를 고려하여 이미지(301)를 이미지 데이터(300)의 표지로 설정할 수 있다. 또 다른 예로, 사용자 단말(200)이 입력 장치(100)로부터 수신한 이미지 데이터(300)의 폴더명 또는 파일명으로부터 이미지 데이터(300)의 제목을"TITLE"로 식별하였지만, 이미지 데이터(300)를 구성하는 이미지들(301 내지 305) 중 이미지 데이터(300)의 표지로 사용될 이미지를 탐색할 수 없는 경우, 사용자 단말(200)은 네트워크를 통해 웹사이트 등으로부터 이미지 데이터(300)의 표지로 사용될 이미지(미도시)를 탐색하여 내려 받은 후 이미지 데이터(300)의 표지로 설정할 수 있다.
도 4는 일 실시예에 따른 이미지의 밝기를 보정하는 방법을 도시한 도면이다.
도 4를 참조하면, 실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지(400)에 존재하는 픽셀의 전제적인 밝기를 조정함으로써 이미지(400)의 명암대비를 높일 수 있다. 사용자 단말(200)은 이미지(400)의 전체 픽셀에 특정 상수를 곱하거나 또는 미리 설정된 밝기 값을 기준으로 설정된 밝기 값보다 밝은 값을 가지는 픽셀은 더욱 밝게, 설정된 밝기 값보다 어두운 값을 가지는 픽셀은 더욱 어둡게 조정할 수 있다. 그러나, 픽셀의 명암대비를 높이는 방법은 이에 한정되지는 않는다.
실시예들에 따른 사용자 단말(200)은 이미지(400)에 대하여 윤곽선 추출 알고리즘(Edge Detection Algorithm)을 적용하여 이미지(400)에 존재하는 윤곽선을 탐색할 수 있다. 이 때 사용자 단말(200)은 1차 미분, 소벨(Sobel) 윤곽선 추출, 프리윗(Prewitt) 윤곽선 추출, 로버츠(Roberts) 윤곽선 추출, 컴퍼스(Compass) 윤곽선 추출, 2차 미분, 캐니(Canny) 윤곽선 추출 등의 알고리즘을 사용할 수 있으나, 사용 가능한 알고리즘이 이에 한정되지는 않는다. 사용자 단말(200)은 탐색한 윤곽선에 배치된 픽셀과 윤곽선에 배치된 픽셀에 인접한 픽셀의 명암대비를 높임으로써 이미지(400)의 전체적인 진하기를 보정할 수 있다.
예를 들어, 실시예들에 따른 사용자 단말(200)은 이미지(400)에 존재하는 영역(401 내지 402)에 존재하는 픽셀들의 밝기 값이 미리 설정된 밝기 값을 기준으로 명암을 결정할 수 있다. 사용자 단말(200)이 영역(401)에 존재하는 픽셀들의 밝기 값이 미리 설정된 밝기 값에 비해 어두운 값을 가지고, 영역(402)에 존재하는 픽셀들의 밝기 값이 미리 설정된 밝기 값에 비해 밝은 값을 가지는 것으로 결정할 수 있다. 이 경우, 사용자 단말(200)은 영역(401)에 존재하는 픽셀들의 밝기 값을 더욱 어둡게 조정하고, 영역(402)에 존재하는 픽셀들의 밝기 값을 더욱 밝게 조정할 수 있다. 사용자 단말(200)은 이미지(400)에 대해 윤곽선 추출 알고리즘을 적용하여 이미지(400)에 존재하는 윤곽선(411 내지 412)를 탐색할 수 있다. 사용자 단말(200)은 탐색한 윤곽선(411 내지 412)에 배치된 픽셀들과 윤곽선(411 내지 412)에 배치된 픽셀들에 인접하여 배치된 픽셀들 간의 명암대비를 높임으로써 윤곽선을 보다 선명하게 보정할 수 있다.
도 5은 일 실시예에 따른 이미지의 기울기를 보정하는 방법을 도시한 도면이다.
도 5를 참조하면, 실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터(500)를 구성하는 이미지들(501 내지 503)에 존재하는 직선을 탐색할 수 있다. 이 때, 사용자 단말(200)은 이미지 데이터(500)를 구성하는 이미지들(501 내지 503) 각각에 대하여 허프 변환(Hough Transform)을 적용하여 이미지들(501 내지 503)에 존재하는 직선을 탐색할 수 있다.
실시예들에 따른 사용자 단말(200)은 허프 변환을 이용해 탐색한, 입력 장치(100)로부터 수신한 이미지 데이터(500)를 구성하는 이미지들(501 내지 503)에 존재하는 직선을 이용하여 이미지들(501 내지 503)의 기울기를 산출하기 위한 직선 쌍을 결정할 수 있다. 보다 구체적으로, 사용자 단말(200)은 허프 변환을 이용해 탐색한 이미지들(501 내지 503)에 존재하는 직선들 중 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하는 적어도 하나 이상의 직선 쌍을 결정할 수 있다.
실시예들에 따른 사용자 단말(200)은 이미지들(501 내지 503) 각각에 대하여 결정한 적어도 하나 이상의 직선 쌍들 중 하나의 직선 쌍을 기준 직선 쌍으로 결정할 수 있다. 여기서, 기준 직선 쌍은 이미지들(501 내지 503) 각각에 존재하는 직선 쌍들 중 길이가 가장 긴 직선 쌍일 수 있다. 이미지들(501 내지 503) 각각에 존재하는 기준 직선 쌍들은 이미지들(501 내지 503)의 기울기를 산출하기 위한 기준이 될 수 있다.
실시예들에 따른 사용자 단말(200)은 이미지들(501 내지 503) 각각에 대하여 결정한 기준 직선 쌍들의 길이를 비교할 수 있다. 이 때, 사용자 단말(200)은 결정한 기준 직선 쌍을 모두 1:1 비교할 수도 있고 순서 상 인접하는 이미지의 기준 직선 쌍들 간 비교만 진행할 수도 있으나 비교 방법은 이에 한정되지 않는다. 길이를 비교한 결과 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍이 존재하는 경우, 사용자 단말(200)은 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍을 대각 직선 쌍으로 결정할 수 있다. 대각 직선 쌍을 가지는 이미지가 존재하는 경우, 사용자 단말(200)은 대각 직선 쌍을 가지는 이미지에 존재하는 직선들 중 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하는 직선 쌍들 중 대각 직선 쌍 다음으로 길이가 긴 직선 쌍을 기준 직선 쌍으로 재결정할 수 있다. 사용자 단말(200)은 재결정한 기준 직선 쌍을 포함한 이미지들의 기준 직선 쌍의 길이를 다시 비교하여 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍의 존재 여부를 다시 판단하는 과정을 반복하여 각각의 이미지들의 최종적인 기준 직선 쌍을 결정할 수 있다. 또는, 사용자 단말(200)은 이미지들(501 내지 503) 각각에 대하여 결정한 기준 직선 쌍들의 기울기를 비교할 수 있다. 기울기를 비교한 결과 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍이 존재하는 경우, 사용자 단말(200)은 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍을 대각 직선 쌍으로 결정할 수 있다. 대각 직선 쌍을 가지는 이미지가 존재하는 경우, 사용자 단말(200)은 대각 직선 쌍을 가지는 이미지에 존재하는 직선 들 중 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하는 직선 쌍들 중 대각 직선 쌍 다음으로 길이가 긴 직선 쌍을 기준 직선 쌍으로 재결정할 수 있다. 사용자 단말(200)은 재결정한 기준 직선 쌍을 포함한 이미지들의 기준 직선 쌍의 기울기를 다시 비교하여 미리 설정된 차이 값의 임계를 초과하는 기준 직선 쌍의 존재 여부를 다시 판단하는 과정을 반복하여 각각의 이미지들의 최종적인 기준 직선 쌍을 결정할 수 있다.
실시예들에 따른 사용자 단말(200)은 이미지들(501 내지 503) 각각에 대하여 최종적으로 결정된 기준 직선 쌍을 이용하여 각각의 이미지들(501 내지 503)의 기울기를 산출할 수 있다. 사용자 단말(200)은 산출한 기울기만큼 이미지들(501 내지 503)을 각각 회전하여 이미지들(501 내지 503)의 기울기를 보정할 수 있다.
예를 들어, 실시예들에 따른 사용자 단말(200)은 이미지 데이터(500)를 구성하는 이미지들(501 내지 503)에 대하여 허프 변환을 적용하여 이미지들(501 내지 503)에 존재하는 직선을 탐색할 수 있다. 사용자 단말(200)은 이미지 데이터(500)를 구성하는 이미지들(501 내지 503) 각각에 대하여 허프 변환을 적용하여 탐색한 직선들 중 x:y의 길이 비율을 가지면서 서로 직각을 이루는 직선 쌍을 이미지들(501 내지 503) 각각에 대한 기준 직선 쌍으로 결정할 수 있다. 이미지(501)를 보면, ax의 길이를 가지는 직선과 ay의 길이를 가지는 직선이 x:y의 길이 비율을 가지면서 서로 직각을 이루고 있으므로 사용자 단말은 ax의 길이를 가지는 직선과 ay의 길이를 가지는 직선을 이미지(501)의 기준 직선 쌍으로 결정할 수 있다. 이미지(502)를 보면, bx의 길이를 가지는 직선과 by의 길이를 가지는 직선, 그리고 cx의 길이를 가지는 직선과 cy의 길이를 가지는 직선이 x:y의 길이 비율을 가지면서 서로 직각을 이루고 있음을 알 수 있다. 사용자 단말(200)은 이미지(502)에 존재하는 2개의 직선 쌍 중 길이가 더 긴 직선 쌍 즉, bx의 길이를 가지는 직선과 by의 길이를 가지는 직선을 이미지(502)의 기준 직선 쌍으로 결정할 수 있다. 이미지(503)를 보면, dx의 길이를 가지는 직선과 dy의 길이를 가지는 직선, 그리고 ex의 길이를 가지는 직선과 ey의 길이를 가지는 직선이 x:y의 길이 비율을 가지면서 서로 직각을 이루고 있음을 알 수 있다. 사용자 단말(200)은 이미지(503)에 존재하는 2개의 직선 쌍 즉, ex의 길이를 가지는 직선과 ey의 길이를 가지는 직선을 이미지(503)의 기준 직선 쌍으로 결정할 수 있다. 사용자 단말(200)은 기준 직선 쌍들 간의 길이를 비교한 결과 이미지(503)의 기준 직선 쌍은 다른 이미지들(501 내지 502)의 기준 직선 쌍들과 비교할 때 길이 차이가 많이 난다는 것을 식별할 수 있다. 따라서, 사용자 단말(200)은 이미지(503)의 기준 직선 쌍인 ex의 길이를 가지는 직선과 ey의 길이를 가지는 직선을 대각 직선 쌍으로 결정하고, ex의 길이를 가지는 직선과 ey의 길이를 가지는 직선의 다음으로 길이가 긴 dx의 길이를 가지는 직선과 dy의 길이를 가지는 직선을 기준 직선 쌍으로 재결정할 수 있다. 사용자 단말(200)은 이미지(503)의 기준 직선 쌍을 재결정한 후, 다시 기준 직선 쌍들 간의 길이를 비교할 수 있다. 사용자 단말(200)은 다시 기준 직선 쌍들 간의 길이를 비교한 결과 기준 직선 쌍들 간의 길이 차이가 크지 않은 경우 결정된 기준 직선 쌍들을 최종적인 기준 직선 쌍으로 결정할 수 있다. 또 다른 예로, 사용자 단말(200)은 기준 직선 쌍들의 기울기를 비교한 결과 이미지(503)의 기준 직선 쌍은 다른 이미지들(501 내지 502)의 기준 직선 쌍들과 비교할 때 기울기 차이가 많이 난다는 것을 식별할 수 있다. 따라서, 사용자 단말(200)은 이미지(503)의 기준 직선 쌍인 ex의 길이를 가지는 직선과 ey의 길이를 가지는 직선의 다음으로 길이가 긴 dx의 길이를 가지는 직선과 dy의 길이를 가지는 직선을 기준 직선 쌍으로 재결정할 수 있다. 사용자 단말(200)은 이미지(503)의 기준 직선 쌍을 재결정한 후, 다시 기준 직선 쌍들 간의 기울기를 비교할 수 있다. 사용자 단말(200)은 다시 기준 직선 쌍들 간의 기울기를 비교한 결과 기준 직선 쌍들 간의 기울기 차이가 크지 않은 경우 결정된 기준 직선 쌍들을 최종적인 기준 직선 쌍으로 결정할 수 있다. 사용자 단말(200)은 이미지(501)의 길이가 ax인 직선을 이용하여 이미지(501)의 기울기를 산출할 수 있다. 사용자 단말(200)은 이미지(502)의 길이가 bx인 직선을 이용하여 이미지(502)의 기울기를 산출할 수 있다. 사용자 단말(200)은 이미지(503)의 길이가 dx인 직선을 이용하여 이미지(503)의 기울기를 산출할 수 있다. 사용자 단말(200)은 이미지들(501 내지 503) 각각에 대하여 산출한 기울기만큼 회전시킴으로써 이미지들(501 내지 503)의 기울기를 보정할 수 있다.
도 6은 일 실시예에 따른 이미지의 사이즈를 보정하는 방법을 도시한 도면이다.
도 6을 참조하면, 실시예들에 따른 사용자 단말(200)은 입력 장치(100)로부터 수신한 이미지 데이터(600)를 구성하는 이미지들(601 내지 603)에 존재하는 직선을 이용하여 이미지들(601 내지 603)의 사이즈를 보정할 수 있다. 보다 구체적으로, 사용자 단말(200)은 허프 변환을 이용해 탐색한 이미지들(601 내지 603)에 존재하는 직선들 중 위에서 이용한 방법을 통해 기준 직선 쌍을 결정하고, 기준 직선 쌍을 이용해 이미지들(601 내지 603)의 사이즈를 보정할 수 있다.
실시예들에 따른 사용자 단말(200)은 기준 직선 쌍을 이용해 입력 장치(100)로부터 수신한 이미지 데이터(600)를 구성하는 이미지들(601 내지 603)의 크기를 비교하여 대표 기준 직선을 결정할 수 있다. 여기서 대표 기준 직선은 이미지 데이터(600)를 구성하는 이미지들(601 내지 603)의 기준 직선 쌍 중 길이가 긴 직선들과 길이가 짧은 직선들을 각각 비교하여 결정되는 가장 길이가 긴 직선일 수 있다. 이미지 데이터(600)의 대표 기준 직선은 이미지들(601 내지 603)의 사이즈를 보정하기 위한 기준이 될 수 있다.
실시예들에 따른 사용자 단말(200)은 대표 기준 직선을 기준으로 이미지 데이터(600)을 구성하는 이미지들(601 내지 603)의 크기를 조정함으로써 모든 이미지들의 사이즈를 동일하게 보정할 수 있다.
예를 들어, 사용자 단말(200)은 이미지 데이터(600)를 구성하는 이미지들(601 내지 603) 대하여 허프 변환을 적용하여 이미지들(601 내지 603)에 존재하는 직선을 탐색하고, 이미지(601)의 기준 직선 쌍(611 내지 612), 이미지(602)의 기준 직선 쌍(621 내지 622) 및 이미지(603)의 기준 직선 쌍(631 내지 632)를 결정할 수 있다. 사용자 단말(200)은 이미지(601)의 기준 직선 쌍(611 내지 612), 이미지(602)의 기준 직선 쌍(621 내지 622) 및 이미지(603)의 기준 직선 쌍(631 내지 632)의 길이를 비교하여 이미지 데이터(600)의 대표 기준 직선을 결정할 수 있다. 사용자 단말(200)은 이미지들(601 내지 603)의 기준 직선 쌍의 길이를 비교할 때, 기준 직선 쌍을 구성하는 직선 중 길이가 긴 직선들(611 내지 631)과 기준 직선 쌍을 구성하는 직선 중 길이가 짧은 직선들(612 내지 632) 간 길이를 비교할 수 있다. 사용자 단말(200)은 기준 직선 쌍 중 길이가 긴 직선들(611 내지 631) 중에서 가장 길이가 긴 직선(631)과 기준 직선 쌍 중 길이가 짧은 직선들(612 내지 632) 중에서 가장 길이가 긴 직선(632)을 이미지 데이터(600)의 대표 기준 직선으로 결정할 수 있다. 사용자 단말(200)은 결정한 대표 기준 직선(631 내지 632)를 기준으로 이미지 데이터(600)를 구성하는 이미지들(601 내지 603)의 사이즈를 조정함으로써 이미지들(601 내지 603)의 사이즈를 동일하게 보정할 수 있다.
도 7은 일 실시예에 따른 이미지 데이터의 포맷 변환 방법을 수행하는 사용자 단말의 구성을 도시한 도면이다.
도 7을 참조하면, 사용자 단말(200)은 프로세서(701), 통신부(702) 및 메모리(703)를 포함할 수 있다. 그러나, 도 7에 도시된 구성 요소 모두가 사용자 단말(200)의 필수 구성 요소인 것은 아니다. 사용자 단말(200)은 도 7에 도시된 구성 요소보다 많은 구성 요소에 의해 구현될 수도 있고, 도 7에 도시된 구성 요소보다 적은 구성 요소에 의해 구현될 수도 있다. 예를 들어, 실시예들에 따른 사용자 단말(200)은 프로세서(701), 통신부(702) 및 메모리(703) 이외에 사용자 입력 인터페이스(미도시), 출력부(미도시) 등을 더 포함할 수도 있다.
실시예들에 따른 프로세서(701)는 사용자 단말(200)의 전반적인 동작을 제어할 수 있다. 프로세서(701)는 하나 이상의 프로세서를 구비하여, 사용자 단말에 포함된 다른 구성 요소들을 제어할 수 있다. 예를 들어, 프로세서(701)는 메모리(703)에 저장된 프로그램들을 실행함으로써 통신부(702) 및 메모리(703) 등을 전반적으로 제어할 수 있다. 또한, 프로세서(701)는 메모리(703)에 저장된 프로그램들을 실행함으로써, 위에서 서술한 이미지 데이터의 포맷 변환 방법을 수행할 수 있다.
실시예들에 따른 프로세서(701)는 통신부(702)를 통해 입력 장치(100)로부터 수신한 이미지 데이터의 폴더명 또는 파일명으로부터 이미지 데이터의 제목을 식별할 수 있다. 프로세서(701)는 식별한 제목을 이용하여 이미지 데이터를 구성하는 이미지들 중 어느 하나의 이미지를 이미지 데이터의 표지로 설정할 수 있다. 이 때, 이미지 데이터를 구성하는 이미지들 중 표지로 사용될 이미지가 존재하지 않는 경우, 프로세서(701)는 통신부(702)를 통해 외부 장치(미도시)로부터 이미지 데이터의 표지로 사용될 이미지를 내려 받은 후 해당 이미지를 이미지 데이터의 표지로 결정할 수 있다. 프로세서(701)는 입력 장치(100)로부터 수신한 이미지 데이터의 폴더명 또는 파일명으로부터 이미지 데이터를 식별할 수 없는 경우, 미리 학습된 모델을 이용하여 이미지 데이터를 구성하는 이미지들 중 이미지 데이터의 표지로 사용될 이미지를 결정할 수 있다.
실시예들에 따른 프로세서(701)는 통신부(702)를 통해 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 이미지들에 존재하는 픽셀들의 밝기 값을 조정하여 이미지들의 전체적인 명암대비를 높일 수 있다. 프로세서(701)는 이미지들에 대해 윤곽선 추출 알고리즘을 적용하여 이미지들에 존재하는 윤곽선을 탐색하고, 탐색한 윤곽선에 배치된 픽셀들과 윤곽선애 배치된 픽셀들에 인접한 픽셀들 간의 명암대비를 높임으로써 이미지들에 존재하는 윤곽선을 보다 선명하게 보정할 수 있다.
일 실시예에 따르면, 사용자의 생체 정보는 사용자의 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 포함할 수 있다. 프로세서(701)는 아래의 과정을 통해 이미지의 전체 픽셀에 대하여 명암대비를 높일 수 있다.
프로세서(701)는 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 측정할 수 있다. 프로세서(701)는 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 기초로 색상 기준 점수를 계산할 수 있다. 프로세서(701)는 색상 기준 점수를 기초로 이미지의 전체 픽셀에 대하여 명암대비를 높일 수 있다.
예를 들어, 프로세서(701)는 수학식 1을 이용하여 사용자의 생체 정보를 기초로 색상 기준 점수를 계산할 수 있다. 프로세서(701)는 수학식 1을 이용하여 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 기초로 색상 기준 점수를 계산할 수 있다.
Figure 112022134095910-pat00001
상기 수학식 1에서, x는 현재의 사용자를 나타내는 식별 번호이고, m은 이미지 내의 유채색의 비율을 나타내고, n은 이미지 내의 무채색의 비율을 나타내고, A는 제1 색상에 대한 색상 민감도의 등급을 나타내고, B는 제2 색상에 대한 색상 민감도의 등급을 나타내고, C는 제3 색상에 대한 색상 민감도의 등급을 나타내고, a(x)는 제1 색상에 대한 색상 민감도의 가중치, b(x)는 제2 색상에 대한 색상 민감도의 가중치, c(x)는 제3 색상에 대한 색상 민감도의 가중치를 나타내고, 여기서 등급은 색상 민감도의 측정 방식에 따라 정해질 수 있으며, 예를 들어, 5개의 등급으로 나뉘는 경우 0.2, 0.4, ?, 1.0의 값을 가지고, G(x)는 현재의 이미지에 대한 색상 오프셋을 나타내고, na는 명암에 따른 무채색의 분류 개수를 나타내고, 예를 들어, 흰색에서 검정색 사이의 색상을 명암의 정도에 따라 5개의 색상으로 구별할 수 있고, di(x)는 i번째 옵션에 대한 가중치를 나타낸다.
다른 실시예에 따르면, 프로세서(701)는 사용자의 생체 정보를 기초로 뉴럴 네트워크 모델을 이용하여 제1 포맷 이미지 데이터를 구성하는 이미지들의 밝기를 보정할 수 있다. 뉴럴 네트워크 모델은 입력 레이어, 하나 이상의 히든 레이어 및 출력 레이어를 포함할 수 있다. 학습 생체 정보 및 포맷 이미지 데이터를 구성하는 이미지들의 밝기로 구성된 각각의 학습 데이터는 상기 뉴럴 네트워크 모델의 상기 입력 레이어에 입력되어 상기 하나 이상의 히든 레이어 및 출력 레이어를 통과하여 출력 벡터를 출력하고, 상기 출력 벡터는 상기 출력 레이어에 연결된 손실함수 레이어에 입력되고, 상기 손실함수 레이어는 상기 출력 벡터와 각각의 학습 데이터에 대한 정답 벡터를 비교하는 손실 함수를 이용하여 손실값을 출력하고, 상기 뉴럴 네트워크 모델의 파라미터는 상기 손실값이 작아지는 방향으로 학습될 수 있다.
실시예들에 따른 프로세서(701)는 통신부(702)를 통해 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 이미지들에 대해 허프 변환을 적용하여 직선을 탐색할 수 있다. 프로세서(701)는 이미지들 각각에 존재하는 직선들 중 각각의 이미지의 기울기를 산출하기 위한 기준 직선 쌍을 결정할 수 있다. 프로세서(701)는 결정한 기준 직선 쌍으로부터 이미지 데이터를 구성하는 이미지들 각각의 기울기를 산출하고, 산출한 기울기만큼 각각의 이미지들을 회전함으로써 이미지들의 기울기를 보정할 수 있다.
실시예들에 따른 프로세서(701)는 통신부(702)를 통해 입력 장치(100)로부터 수신한 이미지 데이터를 구성하는 이미지들에 대해 기준 직선 쌍을 결정하고, 결정한 기준 직선 쌍을 이용해 대표 기준 직선을 결정할 수 있다. 프로세서(701)는 대표 기준 직선을 이용하여 이미지 데이터를 구성하는 이미지들 각각의 사이즈를 조정함으로써 모든 이미지들의 사이즈를 동일하게 보정할 수 있다.
실시예들에 따른 통신부(702)는 사용자 단말(200)이 입력 장치(100) 등의 외부 장치(미도시)와 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 외부 장치(미도시)는 표지 DB를 보유한 서버 등일 수 있으나 이에 제한되지 않는다. 통신부(702)는 네트워크를 통해 다른 전자 장치로부터의 사용자 입력을 수신하거나, 외부 장치로부터 외부 장치에 저장된 데이터를 수신할 수 있다.
실시예들에 따른 메모리(703)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (5)

  1. 입력 장치로부터 제1 포맷 이미지 데이터를 수신하는 동작;
    상기 제1 포맷 이미지 데이터의 표지를 결정하는 동작;
    사용자의 생체 정보를 기초로 상기 제1 포맷 이미지 데이터를 구성하는 이미지들의 밝기를 보정하는 동작;
    상기 사용자의 생체 정보는 상기 사용자의 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 포함하고,
    상기 이미지들에 존재하는 직선을 탐색하는 동작;
    상기 직선을 이용하여 상기 이미지들 각각에 대하여 미리 설정된 길이 비율 및 미리 설정된 각도를 만족하는 직선 쌍들을 결정하는 동작;
    상기 직선 쌍들 중 가장 길이가 긴 직선 쌍을 상기 이미지들 각각의 기준 직선 쌍으로 결정하는 동작;
    상기 기준 직선 쌍을 이용하여 상기 이미지들의 기울기를 보정하는 동작;
    상기 기준 직선 쌍을 이용하여 상기 이미지들의 사이즈를 보정하는 동작; 및
    상기 제1 포맷 이미지 데이터를 제2 포맷 이미지 데이터로 변환하는 동작
    을 포함하고,
    상기 제1 포맷 이미지 데이터를 구성하는 이미지들의 밝기를 보정하는 동작은,
    상기 사용자의 제1 색상에 대한 민감도, 제2 색상에 대한 민감도 및 제3 색상에 대한 민감도를 기초로 색상 기준 점수를 계산하는 동작; 및
    상기 색상 기준 점수를 기초로 상기 제1 포맷 이미지 데이터를 구성하는 이미지들 각각의 전체 픽셀에 대하여 명암대비를 조정하는 동작을 포함하고,
    상기 사이즈를 보정하는 동작은,
    상기 이미지들의 기준 직선 쌍을 구성하는 직선 중 가장 길이가 긴 직선을 대표 기준 직선으로 결정하는 동작; 및
    상기 대표 기준 직선의 길이에 기초하여 상기 이미지들의 사이즈를 보정하는 동작
    을 더 포함하는,
    이미지 데이터의 포맷 변환 방법.
  2. 제1항에 있어서,
    상기 표지를 결정하는 동작은,
    상기 제1 포맷 이미지 데이터의 제목을 식별하는 동작;
    상기 제목에 기초하여 상기 제목의 표지를 탐색하는 동작; 및
    상기 제목의 표지를 상기 제1 포맷 이미지 데이터의 표지로 결정하는 동작
    을 포함하는 이미지 데이터의 포맷 변환 방법.
  3. 제2항에 있어서,
    상기 표지를 탐색하는 동작은,
    상기 제1 포맷 이미지 데이터에 상기 제목의 표지가 포함되어 있는지를 결정하는 동작; 및
    상기 제목의 표지 포함여부에 기초하여 상기 제목의 표지를 외부 장치로부터 내려 받는 동작
    을 포함하는 이미지 데이터의 포맷 변환 방법.
  4. 제1항에 있어서,
    상기 밝기를 보정하는 동작은,
    상기 제1 포맷 이미지 데이터에 포함된 이미지의 전체 픽셀에 대하여 명암대비를 높이는 동작;
    상기 이미지 내 윤곽선를 탐색하는 동작; 및
    상기 윤곽선 부분에 배치된 픽셀들과 상기 픽셀들에 인접한 픽셀들 간의 명암대비를 높이는 동작
    을 포함하는 이미지 데이터의 포맷 변환 방법.
  5. 제1항에 있어서,
    상기 기울기를 보정하는 동작은,
    상기 기준 직선 쌍의 기울어진 각도를 산출하는 동작; 및
    상기 산출한 각도만큼 이미지들을 회전시키는 동작
    을 포함하는 이미지 데이터의 포맷 변환 방법.
KR1020220173979A 2022-05-24 2022-12-13 이미지 데이터의 포맷 변환 방법 및 장치 KR102543025B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220173979A KR102543025B1 (ko) 2022-05-24 2022-12-13 이미지 데이터의 포맷 변환 방법 및 장치
KR1020230047066A KR20230163927A (ko) 2022-05-24 2023-04-10 이미지 데이터의 포맷 변환 방법 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220063630A KR102478630B1 (ko) 2022-05-24 2022-05-24 이미지 데이터의 포맷 변환 방법 및 장치
KR1020220173979A KR102543025B1 (ko) 2022-05-24 2022-12-13 이미지 데이터의 포맷 변환 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020220063630A Division KR102478630B1 (ko) 2022-05-24 2022-05-24 이미지 데이터의 포맷 변환 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230047066A Division KR20230163927A (ko) 2022-05-24 2023-04-10 이미지 데이터의 포맷 변환 방법 및 장치

Publications (1)

Publication Number Publication Date
KR102543025B1 true KR102543025B1 (ko) 2023-06-13

Family

ID=84534999

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020220063630A KR102478630B1 (ko) 2022-05-24 2022-05-24 이미지 데이터의 포맷 변환 방법 및 장치
KR1020220173979A KR102543025B1 (ko) 2022-05-24 2022-12-13 이미지 데이터의 포맷 변환 방법 및 장치
KR1020230047066A KR20230163927A (ko) 2022-05-24 2023-04-10 이미지 데이터의 포맷 변환 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020220063630A KR102478630B1 (ko) 2022-05-24 2022-05-24 이미지 데이터의 포맷 변환 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020230047066A KR20230163927A (ko) 2022-05-24 2023-04-10 이미지 데이터의 포맷 변환 방법 및 장치

Country Status (1)

Country Link
KR (3) KR102478630B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012026597A1 (ja) * 2010-08-27 2012-03-01 ソニー株式会社 画像処理装置および方法
KR20180069452A (ko) * 2016-12-15 2018-06-25 삼성전자주식회사 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치
KR20190016868A (ko) * 2017-08-09 2019-02-19 삼성전자주식회사 이미지 처리 방법 및 그에 따른 장치
KR102296668B1 (ko) * 2021-03-23 2021-09-02 주식회사 진소프트 디지털화된 공공기관 기록물의 이미지 보정 방법
KR20220019501A (ko) * 2020-08-10 2022-02-17 (주)아이웨이 딥러닝 기반 전자책 자동변환 서비스 제공 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012026597A1 (ja) * 2010-08-27 2012-03-01 ソニー株式会社 画像処理装置および方法
KR20180069452A (ko) * 2016-12-15 2018-06-25 삼성전자주식회사 뉴럴 네트워크의 학습 방법 및 뉴럴 네트워크를 이용한 인식 방법, 및 그 장치
KR20190016868A (ko) * 2017-08-09 2019-02-19 삼성전자주식회사 이미지 처리 방법 및 그에 따른 장치
KR20220019501A (ko) * 2020-08-10 2022-02-17 (주)아이웨이 딥러닝 기반 전자책 자동변환 서비스 제공 방법
KR102296668B1 (ko) * 2021-03-23 2021-09-02 주식회사 진소프트 디지털화된 공공기관 기록물의 이미지 보정 방법

Also Published As

Publication number Publication date
KR20230163927A (ko) 2023-12-01
KR102478630B1 (ko) 2022-12-16

Similar Documents

Publication Publication Date Title
US10127441B2 (en) Systems and methods for classifying objects in digital images captured using mobile devices
CN108241645B (zh) 图像处理方法及装置
JP5701182B2 (ja) 画像処理装置、画像処理方法及びコンピュータプログラム
JP5067852B2 (ja) 画像処理方法及び画像処理装置
US20140270536A1 (en) Systems and methods for classifying objects in digital images captured using mobile devices
US11790584B2 (en) Image and text typesetting method and related apparatus thereof
RU2640296C1 (ru) Способ и устройство для определения пригодности документа для оптического распознавания символов (ocr) на сервере
KR102311367B1 (ko) 화상 처리 장치, 화상 처리 방법, 및 프로그램
US20230343119A1 (en) Captured document image enhancement
RU2603495C1 (ru) Классификация изображений документов на основе параметров цветовых слоев
US10360446B2 (en) Data processing apparatus, storage medium storing program, and data processing method
KR102543025B1 (ko) 이미지 데이터의 포맷 변환 방법 및 장치
US9424488B2 (en) Applying a segmentation engine to different mappings of a digital image
JP2009065657A (ja) 画像のかぶりシーン検出システムおよび方法
JP2006133873A (ja) 画像処理方法及びその装置
JP2006133874A (ja) 画像処理方法及びその装置
US10339628B2 (en) Image processing apparatus, image processing method and computer readable medium
US20230260091A1 (en) Enhancing light text in scanned documents while preserving document fidelity
US20240112348A1 (en) Edge identification of documents within captured image
CN108596874B (zh) 图像清晰判定方法、装置,以及计算机设备、产品
US8634649B2 (en) Backlit scene type detection
JP2023144246A (ja) 情報処理装置、情報処理システム、制御方法、プログラム
JP6194677B2 (ja) 画像処理装置およびプログラム
JP4829757B2 (ja) 罫線抽出装置および方法
CN116420143A (zh) 基于深度神经网络(dnn)模型和图像特征检测模型的反向图像搜索

Legal Events

Date Code Title Description
GRNT Written decision to grant