KR102596157B1 - Photo management device and method thereof - Google Patents
Photo management device and method thereof Download PDFInfo
- Publication number
- KR102596157B1 KR102596157B1 KR1020210064353A KR20210064353A KR102596157B1 KR 102596157 B1 KR102596157 B1 KR 102596157B1 KR 1020210064353 A KR1020210064353 A KR 1020210064353A KR 20210064353 A KR20210064353 A KR 20210064353A KR 102596157 B1 KR102596157 B1 KR 102596157B1
- Authority
- KR
- South Korea
- Prior art keywords
- photo
- photos
- dark
- similar
- screenshot
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration by the use of local operators
Abstract
본 명세서는 저장된 상기 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고, 불필요한 사진인 경우 해당 사진의 삭제를 추천하고, 삭제를 추천한 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력하는 사진 관리 장치사진 관리 장치 및 그 방법을 개시한다.This specification analyzes the images included in the stored photos to determine whether they are unnecessary photos, recommends deletion of the photos if they are unnecessary photos, lists photos recommended for deletion, and provides a display for selecting whether to delete the photos. A photo management device and method for printing photos are disclosed.
Description
본 명세서는 사진을 관리하는 사진 관리 장치 및 방법을 제공한다.This specification provides a photo management device and method for managing photos.
오늘날 스마트 폰을 이용한 사진 촬영은 현대인의 필수 요소가 되었다. 이러한 사회적 변화에 따라 현대인은 더 큰 저장 용량을 필요로 하고 불필요한 사진의 수가 증가하고 있다. 저장을 지원하기 위해, 다양한 플랫폼으로부터 클라우드 기반 사진 저장 서비스가 등장하고 많은 사람들이 이 서비스를 이용하고 있다. 사진의 수가 증가함에 따라 사용자가 원하는 사진을 찾기 어렵고 정리하는 데 시간이 많이 걸린다. Today, taking photos using a smartphone has become an essential part of modern life. In response to these social changes, modern people require larger storage capacity and the number of unnecessary photos is increasing. To support storage, cloud-based photo storage services have emerged from various platforms and many people are using these services. As the number of photos increases, it becomes difficult for users to find the photos they want and it takes a lot of time to organize them.
새로운 스마트 폰이 출시될 때마다 사람들이 더 좋은 사진을 찍을 수 있도록 기능이 개선되고 있어 누구나 전문 사진 작가만큼 좋은 사진을 찍을 수 있다. 그 동안 사진의 해상도는 점점 커지고 한 장의 사진 크기는 10MB가 될 정도로 커졌다. 일상 생활에서 사람들은 많은 사진을 찍고, 특히 그들이 여행갈 때 훨씬 더 많은 사진을 찍는다. 따라서 사진 관리가 더욱 필요하고 중요해지고 있다. With each new smartphone released, features are improving to help people take better photos, making it possible for anyone to take photos as good as a professional photographer. Meanwhile, the resolution of photos has become increasingly larger and the size of one photo has grown to 10MB. In everyday life, people take a lot of photos, and especially when they travel, they take even more photos. Therefore, photo management is becoming more necessary and important.
네이버, 구글, 마이크로소프트와 같은 플랫폼 회사에서 사진 관리를 위한 클라우드 서비스를 제공하고 있다. 사람들은 이러한 서비스를 사용하여 백업하고 있다. 하지만 사진이 많아질수록 여러 가지 문제가 발생한다. Platform companies such as Naver, Google, and Microsoft provide cloud services for photo management. People are using these services to back up. However, as the number of photos increases, various problems arise.
첫째, 저장 용량이 부족해진다. 둘째, 원하는 사진을 찾기가 어려워진다. 셋째, 흔들리는 사진과 같은 불필요한 사진이 많다. 특히 세 번째 문제는 용량 부족과 사진 검색의 어려움을 야기하고 있다. First, storage capacity becomes insufficient. Second, it becomes difficult to find the photo you want. Third, there are many unnecessary photos, such as shaky photos. In particular, the third problem is causing insufficient storage capacity and difficulty in photo retrieval.
기존 사진 관리 서비스는 주로 일부 검색 및 분류 기능이 있는 저장 공간을 제공하지만 세 번째 문제에 대한 해결책은 제공하지 않는다. Existing photo management services primarily provide storage with some search and sorting capabilities, but do not provide a solution to the third problem.
본 실시예들은 딥 러닝을 이용하여 사진을 분류하고 불필요한 사진을 추천하여 사진 관리를 용이하게 하는 사진 관리 장치 및 그 방법을 제공할 수 있다.These embodiments can provide a photo management device and method that classifies photos using deep learning and recommends unnecessary photos to facilitate photo management.
또한, 본 실시예들은 피사체가 무엇인지 식별하여 사진에 태깅하는 기능, 잘못 촬영된 사진을 확인하는 기능, 유사 사진을 추천하는 기능을 제공하는 사진 관리 장치 및 그 방법을 제공할 수 있다.Additionally, the present embodiments can provide a photo management device and method that provide a function of identifying a subject and tagging a photo, a function of checking incorrectly taken photos, and a function of recommending similar photos.
또한, 본 실시예들은 사용자가 간편하게 사진을 관리하고 저장 용량을 효율적으로 사용하는 사진 관리 장치 및 그 방법을 제공할 수 있다.Additionally, the present embodiments can provide a photo management device and method that allow users to easily manage photos and efficiently use storage capacity.
일 측면에서, 일 실시예에 따른 사진 관리 장치사진 관리 장치는 입력부, 통신망을 통해 다른 장치와 데이터를 주고받는 통신부, 사진들을 저장하는 메모리부, 저장된 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고, 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 제어부 및 제어부에서 삭제를 추천한 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력하는 출력부를 포함할 수 있다.In one aspect, a photo management device according to an embodiment includes an input unit, a communication unit that exchanges data with another device through a communication network, a memory unit that stores photos, and analyzes images included in stored photos to determine whether they are unnecessary photos. It may include a control unit that analyzes the photo and recommends deletion of the photo if it is an unnecessary photo, and an output unit that lists the photos recommended for deletion by the control unit and outputs a display for selecting whether to delete the photos.
다른 측면에서, 다른 실시예에 따른 사진 관리 방법은, 사진들을 저장하는 단계, 저장된 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 단계 및 삭제를 추천한 상기 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력하는 단계를 포함할 수 있다.In another aspect, a photo management method according to another embodiment includes the steps of storing photos, analyzing images included in the stored photos to determine whether they are unnecessary photos, and recommending deletion of the photos if they are unnecessary photos, and deleting the photos. It may include listing the recommended photos and outputting a display for selecting whether to delete the photos.
본 실시예들에 따른 사진 관리 장치 및 그 방법은 딥 러닝을 이용하여 사진을 분류하고 불필요한 사진을 추천하여 사진 관리를 용이하게 할 수 있다. The photo management device and method according to the present embodiments can classify photos using deep learning and recommend unnecessary photos to facilitate photo management.
또한, 본 실시예들에 따른 사진 관리 장치 및 그 방법은 피사체가 무엇인지 식별하여 사진에 태깅하는 기능, 잘못 촬영된 사진을 확인하는 기능, 유사 사진을 추천하는 기능을 제공할 수 있다.Additionally, the photo management device and method according to the present embodiments can provide a function of identifying the subject and tagging the photo, a function of checking an incorrectly taken photo, and a function of recommending similar photos.
또한, 본 실시예들에 따른 사진 관리 장치 및 그 방법은 사용자가 간편하게 사진을 관리하고 저장 용량을 효율적으로 사용할 수 있다. Additionally, the photo management device and method according to the present embodiments allow users to easily manage photos and use storage capacity efficiently.
도 1은 일 실시예에 따른 사진 관리 장치의 블럭도이다.
도 2는 메모리부의 데이터 구조도이다.
도 3은 제어부의 블럭도이다.
도 4는 도 3의 사진 객체 인식 모듈에서 활용하는 딥 러닝 모델의 구성도이다.
도 5는 흔들린 사진 감지 모듈이 라플라시안 분산을 이용하여 사진의 흐릿함을 판단하는 과정을 도시하고 있다.
도 6은 도 3의 어두운 사진 감지 모듈에서 활용하는 딥 러닝 모델의 구성도이다.
도 7a 및 도 7b는 도 3의 어두운 사진 감지 모듈에서 사용하는 딥 러닝 모델이 드롭 아웃 기술을 적용한 경우와 적용하지 않은 경우에 모든 노드들의 연결 상태들을 도시하고 있다.
도 8은 또다른 실시예에 따른 사진 관리 방법의 흐름도이다.
도 9는 도 8의 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 단계의 흐름도이다.
도 10은 클라우드 기반 사진 관리 시스템의 블럭도이다.
도 11은 실시예에 따른 모델 학습 과정을 보여준다.
도 12는 클라우드 기반 사진 관리 시스템에서 사진 관리 서비스를 제공받은 스마트 폰 애플리케이션의 일부 이미지이다. 1 is a block diagram of a photo management device according to an embodiment.
Figure 2 is a data structure diagram of the memory unit.
Figure 3 is a block diagram of the control unit.
Figure 4 is a configuration diagram of a deep learning model used in the photo object recognition module of Figure 3.
Figure 5 shows the process by which the blurred photo detection module determines the blurriness of the photo using Laplacian distribution.
Figure 6 is a configuration diagram of a deep learning model used in the dark photo detection module of Figure 3.
Figures 7a and 7b show the connection states of all nodes when the deep learning model used in the dark photo detection module of Figure 3 applies the dropout technology and when it does not.
Figure 8 is a flowchart of a photo management method according to another embodiment.
Figure 9 is a flowchart of steps for recommending deletion of the unnecessary picture in Figure 8.
Figure 10 is a block diagram of a cloud-based photo management system.
Figure 11 shows a model learning process according to an embodiment.
Figure 12 is a partial image of a smartphone application provided with photo management services from a cloud-based photo management system.
이하, 본 개시의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성 요소들에 참조부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 기술 사상의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다. 본 명세서 상에서 언급된 "포함한다", "갖는다", "이루어진다" 등이 사용되는 경우 "~만"이 사용되지 않는 이상 다른 부분이 추가될 수 있다. 구성 요소를 단수로 표현한 경우에 특별한 명시적인 기재 사항이 없는 한 복수를 포함하는 경우를 포함할 수 있다.Hereinafter, some embodiments of the present disclosure will be described in detail with reference to illustrative drawings. In adding reference numerals to components in each drawing, the same components may have the same reference numerals as much as possible even if they are shown in different drawings. Additionally, in describing the present embodiments, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present technical idea, the detailed description may be omitted. When “comprises,” “has,” “consists of,” etc. mentioned in the specification are used, other parts may be added unless “only” is used. When a component is expressed in the singular, it can also include the plural, unless specifically stated otherwise.
또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다. Additionally, in describing the components of the present disclosure, terms such as first, second, A, B, (a), and (b) may be used. These terms are only used to distinguish the component from other components, and the nature, sequence, order, or number of the components are not limited by the term.
구성 요소들의 위치 관계에 대한 설명에 있어서, 둘 이상의 구성 요소가 "연결", "결합" 또는 "접속" 등이 된다고 기재된 경우, 둘 이상의 구성 요소가 직접적으로 "연결", "결합" 또는 "접속" 될 수 있지만, 둘 이상의 구성 요소와 다른 구성 요소가 더 "개재"되어 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다. 여기서, 다른 구성 요소는 서로 "연결", "결합" 또는 "접속" 되는 둘 이상의 구성 요소 중 하나 이상에 포함될 수도 있다. In the description of the positional relationship of components, when two or more components are described as being “connected,” “coupled,” or “connected,” the two or more components are directly “connected,” “coupled,” or “connected.” ", but it should be understood that two or more components and other components may be further "interposed" and "connected," "combined," or "connected." Here, other components may be included in one or more of two or more components that are “connected,” “coupled,” or “connected” to each other.
구성 요소들이나, 동작 방법이나 제작 방법 등과 관련한 시간적 흐름 관계에 대한 설명에 있어서, 예를 들어, "~후에", "~에 이어서", "~다음에", "~전에" 등으로 시간적 선후 관계 또는 흐름적 선후 관계가 설명되는 경우, "바로" 또는 "직접"이 사용되지 않는 이상 연속적이지 않은 경우도 포함할 수 있다.In the description of temporal flow relationships related to components, operation methods, production methods, etc., for example, temporal precedence relationships such as “after”, “after”, “after”, “before”, etc. Or, when a sequential relationship is described, non-continuous cases may be included unless “immediately” or “directly” is used.
한편, 구성 요소에 대한 수치 또는 그 대응 정보(예: 레벨 등)가 언급된 경우, 별도의 명시적 기재가 없더라도, 수치 또는 그 대응 정보는 각종 요인(예: 공정상의 요인, 내부 또는 외부 충격, 노이즈 등)에 의해 발생할 수 있는 오차 범위를 포함하는 것으로 해석될 수 있다.On the other hand, when a numerical value or corresponding information (e.g., level, etc.) for a component is mentioned, even if there is no separate explicit description, the numerical value or corresponding information is related to various factors (e.g., process factors, internal or external shocks, It can be interpreted as including the error range that may occur due to noise, etc.).
본 발명의 상세한 설명 및 청구항들에 걸쳐 '학습' 혹은 '러닝'은 절차에 따른 컴퓨팅(computing)을 통하여 기계 학습(machine learning)을 수행함을 일컫는 용어인바, 인간의 교육 활동과 같은 정신적 작용을 지칭하도록 의도된 것이 아님을 통상의 기술자는 이해할 수 있을 것이다.Throughout the detailed description and claims of the present invention, 'learning' or 'learning' is a term that refers to performing machine learning through procedural computing, and refers to mental actions such as human educational activities. Those skilled in the art will understand that it is not intended to do so.
이하 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. Embodiments of the present invention will be described in detail below with reference to the drawings.
도 1은 일 실시예에 따른 사진 관리 장치의 블럭도이다. 1 is a block diagram of a photo management device according to an embodiment.
도 1을 참조하면, 일 실시예에 따른 사진 관리 장치(10)는 저장되어 있는 많은 사진들 중에서 불필요한 사진을 찾아서 삭제 추천해줌으로써 많은 양의 사진을 관리하고 이를 통해 저장 공간을 효율적으로 사용할 수 있게 지원한다Referring to FIG. 1, the
일 실시예에 따른 사진 관리 장치(10)는 딥 러닝을 이용하여 사진을 분류하고 불필요한 사진을 추천하여 사진 관리를 용이하게 하는 사진 관리 서비스를 제공한다. 이 서비스는 피사체가 무엇인지 식별하여 사진에 태깅하는 기능, 잘못 촬영된 사진을 확인하는 기능, 유사 사진을 추천하는 기능을 제공한다. The
이 서비스를 이용하면 사용자가 간편하게 사진을 관리하고 저장 용량을 효율적으로 사용할 수 있다.This service allows users to easily manage photos and use storage capacity efficiently.
구체적으로, 사진 관리 장치(10)는 저장된 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고, 불필요한 사진인 경우 해당 사진의 삭제를 추천하고, 삭제를 추천한 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력한다. Specifically, the
사진 관리 장치(10)는 통신 단말기일 수도 있고, 통신 단말기와 통신망으로 연결된 서버, 예를 들어 클라우드 서버일 수 있다. 사진 관리 장치(10)는 후술하는 구성요소들 중 일부는 통신 단말기에 포함되고 다른 일부는 서버에 포함되는 통신 시스템을 의미할 수도 있다. The
본 명세서에서 설명되는 통신 단말기에는 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device) 등이 포함될 수 있다. 웨어러블 디바이스는 예를 들어, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display) 등이 일 수 있다. Communication terminals described in this specification include mobile phones, smart phones, laptop computers, digital broadcasting terminals, personal digital assistants (PDAs), portable multimedia players (PMPs), navigation, and slate PCs. , tablet PCs, ultrabooks, wearable devices, etc. may be included. Wearable devices may be, for example, a watch-type terminal (smartwatch), a glass-type terminal (smart glass), a head mounted display (HMD), etc.
사진 관리 장치(10)는 정보를 입력하는 입력부(12) 및 통신망을 통해 다른 장치와 데이터를 주고받는 통신부(14), 사진들을 저장하는 메모리부(16), 저장된 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고, 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 제어부(18) 및 제어부(18)에서 삭제를 추천한 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력하는 출력부(20)를 포함한다. The
입력부(12)는, 예를 들어 카메라와 같이 영상을 촬영하는 촬영장치일 수 있다. 통신망은 유선 통신망일 수도 있고 무선통신망일 수 있다. 따라서, 통신부(14)는 유선통신이 가능할 수도 있고, 무선통신이 가능할 수도 있고, 유무선통신이 가능할 수도 있다. The
일 예로, 메모리부(16)에 저장되는 사진은 입력부(12)를 통해 입력된 사진일 수도 있다. 다른 예로, 메모리부(16)에 저장되는 사진은 통신부(14)에 의해 통신망을 통해 다른 장치로부터 수신한 사진일 수도 있다. 예를 들어, 사진 관리 장치(10)가 클라우드 서버인 경우, 메모리부(16)에는 사용자들의 통신 단말기로부터 통신망을 통해 업로드된 사진들을 사용자별로 저장할 수 있다. For example, a photo stored in the
불필요한 사진은 사용자가 저장을 유지할 필요가 없다고 판단하는 사진을 의미한다. 예를 들어, 불필요한 사진은 흔들리거나 어두운 사진(shaky/dark photo) 등의 잘못 찍은 사진들, 같은 피사체에 대해서 여러 번 찍은 유사 사진들, 정보 보관용으로 화면 캡처한 사진(예를 들어 스크린 샷) 등이 포함된다.Unnecessary photos are photos that the user determines are not necessary to keep stored. For example, unnecessary photos include incorrectly taken photos such as shaky/dark photos, similar photos taken multiple times of the same subject, and photos captured on screen for information storage purposes (e.g. screenshots). etc. are included.
도 2는 메모리부의 데이터 구조도이다. Figure 2 is a data structure diagram of the memory unit.
도 1 및 도 2를 참조하면, 메모리부(16)는 사진을 관리하고 사용자의 사진을 저장할 수 있는 공간을 제공한다. 메모리부(16)는 사진의 메타 정보(예를 들어 위도/경도, 날짜, 시간, 파일 이름 등)와 사진의 위치가 저장될 수 있다. 사진 관리 장치(10)가 클라우드 서버인 경우 메모리부(16)는 데이터 베이스로 구성될 수 있다. 사진 관리 장치(10)가 통신 단말기인 경우, 메모리부(16)는 운영체계에 포함된 파일 관리 프로그램에 의해 관리되는 일반적인 메모리 장치일 수 있다. Referring to Figures 1 and 2, the
예를 들어, 메모리부(16)는 도 2에 도시한 바와 같이, 사용자 테이블(user table)과 사진 메타 정보 테이블(photo meta information table), 사진 태그 테이블(photo tag table), 삭제 정보 테이블(deletion information table)을 포함할 수 있으나, 이에 제한되지 않는다. For example, as shown in FIG. 2, the
사용자 테이블(user table)은 사용자 ID와 이메일을 저장할 수 있다. The user table can store user ID and email.
사진 메타 정보 테이블(photo meta information table)은 통신 단말기에서 제공하는 메타 정보와 삭제 가능 여부를 나타내는 부울 값(boolen value), 스크린 샷 여부를 저장할 수 있다. 사진 메타 정보 테이블은 유사 사진 검색 과정 및 스크린 샷 검색 과정에서 사용된다. 삭제 가능 필드의 값은 삭제 추천 기능에 사용된다. The photo meta information table can store meta information provided by the communication terminal, a boolean value indicating whether deletion is possible, and whether a screenshot is taken. The photo meta information table is used in the similar photo search process and screenshot search process. The value of the deleteable field is used in the deletion recommendation function.
사진 태그 테이블(photo tag table)에는 피사체가 무엇인지 나타내는 부울 값이 저장되어 있으며 사용자가 사진을 메모리부에 저장하면 자동으로 기록된다. 태그 정보 사진을 검색하고 유사 사진을 분류하는 과정에서 사용된다. A Boolean value indicating what the subject is is stored in the photo tag table, and is automatically recorded when the user saves the photo to the memory. Tag information is used in the process of searching photos and classifying similar photos.
삭제 정보 테이블(deletion information table)에는 사진 삭제 이유를 나타내는 부울 값이 저장된다. 이 테이블은 제어부(18)에서 분석한 사진 분석 결과 값을 저장한다.A Boolean value indicating the reason for photo deletion is stored in the deletion information table. This table stores the photo analysis result values analyzed by the
도 3은 제어부의 블럭도이다. Figure 3 is a block diagram of the control unit.
도 3을 참조하면, 제어부(18)는, 도 2를 참조하여 설명한 메모리부(16)에 저장된 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고, 불필요한 사진인 경우 해당 사진의 삭제를 추천하고, 그 결과를 메모리부(16)에 저장한다. Referring to FIG. 3, the
제어부(18)는, 사진에서 객체를 식별하는 사진 객체 인식 모듈(26)과 사진이 흔들린지 여부를 판단하는 흔들린 사진 감지 모듈(28), 사진이 어두운지 여부를 결정하는 어두운 사진 감지 모듈(30), 사진들에서 유사 사진을 검색하는 유사 사진 감지 모듈(32), 사진들 중에 스크린 샷을 검색하는 스크린 샷 검색 모듈(33) 중 적어도 하나를 포함할 수 있다. The
제어부(18)는 사진 객체 인식 모듈(26)과 흔들린 사진 감지 모듈(28), 어두운 사진 감지 모듈(30), 유사 사진 감지 모듈(32), 스크린 샷 검색 모듈(33)을 모두 포함하거나, 이들 중 일부만 선택적으로 또는 고정적으로 포함할 수 있다. The
또한 제어부(18)는 사진 객체 인식 모듈(26)과 흔들린 사진 감지 모듈(28), 어두운 사진 감지 모듈(30), 유사 사진 감지 모듈(32), 스크린 샷 검색 모듈(33)을 모두 포함하되, 사용자의 선택에 따라 모듈들 중 일부를 비활성화할수도 있다. 예를 들어, 특정 사용자가 흔들린 사진과 어두운 사진만을 불필요한 사진으로 선택한 경우, 제어부(18)는 유사 사진 감지 모듈(32)을 비활성화할 수 있다. In addition, the
사진 객체 인식 모듈(26)은, 사진에 포함된 이미지를 여러개의 그리드로 분할하고, 각 그리드는 객체의 위치를 식별하기 위해 특정 수의 경계 상자들을 예측하고, 각 경계상자에는 신뢰도 점수가 할당되고, 예측된 각 경계상자와 신뢰도 점수를 이용하여 사진에서 객체를 식별한다. The photographic
사진 객체 인식 모듈(26)의 객체 감지 과정은 구체적으로 다음과 같다. 입력 이미지는 여러 개의 그리드로 분할된다. 객체의 중심이 특정 그리드에 있을 때 그 그리드 는 특정 객체를 감지하는 역할을 한다. 각 그리드는 객체의 위치를 식별하기 위해 특정 수의 '경계 상자들(bounding boxes)'을 예측하고 , 각 경계 상자에는 '신뢰도 점수(confidence score)'가 할당된다. The object detection process of the photo
경계 상자의 조건부 클래스 확률과 해당 객체의 위치를 예측하는 데 하나의 신경망이 사용된다. 신뢰도 점수는 예측된 경계 상자와 실제 객체 경계 사이의 IOU (Intersection Over Union) 값이다. 이 값이 예측된 값과 같거나 클 때 해당 객체가 포함된 것으로 판단된다. 기존 이미지 인식 시스템에서와 같이 객체를 분류하고 확률이 가장 높은 객체를 판단하여 객체가 무엇인지 알 수 있다. A neural network is used to predict the conditional class probability of the bounding box and the location of the corresponding object. The confidence score is the IOU (Intersection Over Union) value between the predicted bounding box and the actual object boundary. When this value is equal to or greater than the predicted value, the object is determined to be included. As in existing image recognition systems, you can classify objects and determine which object has the highest probability to find out what the object is.
사진 객체 인식 모듈(26)은 예측된 각 경계상자와 신뢰도 점수를 이용하여 사진에서 객체를 식별하는 소프트웨어나 하드웨어로 구성될 수도 있으나, 후술하는 바와 같이 딥 러닝 모델을 활용하여 구성할 수도 있다. The photo
본 명세서에서 딥 러닝 모델(deep learning model)은 인공 신경망을 다층 계층로 쌓은 형태일 수 있다. 즉, 딥 러닝 모델(deep learning model)은 다층의 네트워크로 이루어진 심층 신경망(deep neural network)에서 다량의 데이터를 학습시킴으로써 각각의 이미지의 피처(feature)를 자동으로 학습하고, 이를 통해 목적 함수, 즉 예측 정확도의 에러(error)를 최소화시키는 방법으로 네트워크를 학습시켜 나아가는 형태이다. In this specification, a deep learning model may be a multi-layered artificial neural network. In other words, a deep learning model automatically learns the features of each image by learning a large amount of data in a deep neural network consisting of a multi-layer network, and through this, the objective function, i.e. This is a form of training the network in a way that minimizes the error in prediction accuracy.
본 명세서에서 딥 러닝 모델(deep learning model)은 예를 들어 CNN(Convolutional Neural Network), DHN(Deep Hierarchical Network), CDBN(Convolutional Deep Belief Network), DDN(Deconvolutional Deep Network) 등을 이용할 수 있으나, 현재 또는 장래 다양한 딥 러닝 모델을 이용할 수 있다. 본 명세에서 CNN 기반 딥 러닝 모델을 이용하는 것으로 예시적으로 설명하나 본 발명은 이에 제한되지 않고 현재 또는 장래 다양한 딥 러닝 모델을 이용할 수 있다. In this specification, the deep learning model may use, for example, CNN (Convolutional Neural Network), DHN (Deep Hierarchical Network), CDBN (Convolutional Deep Belief Network), DDN (Deconvolutional Deep Network), etc., but currently Alternatively, various deep learning models may be used in the future. In this specification, the use of a CNN-based deep learning model is exemplarily described, but the present invention is not limited thereto and may use various deep learning models currently or in the future.
스크린 샷 검색 모듈(33)은 카메라에서 사진을 저장할 때 함께 저장하는 사진 메타 정보 테이블에 포함된 스크린 샷 여부를 이용하여 사진들 중에 스크린 샷을 검색할 수 있다. 스크린 샷의 경우, 카메라 모듈에서 스크린샷 여부를 확인하여 메모리부(16)의 사진 메타 정보 테이블의 스크린 샷 필드에 저장한다. 따라서 스크린 샷 검색 모듈(33)은 사진 메타 정보 테이블을 이용하여 스크린샷 여부를 확인할 수 있다. 이는 유사 사진 감지 모듈(32)에서 사진 메타 정보 테이블을 이용하는 것과 유사할 수 있다.The screen shot
도 4는 도 3의 사진 객체 인식 모듈에서 활용하는 딥 러닝 모델의 구성도이다. Figure 4 is a configuration diagram of a deep learning model used in the photo object recognition module of Figure 3.
도 4를 참조하면, 사진 객체 인식 모듈(26)은 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층 (pooling layers) 및 완전 연결 계층(fully connected layers)으로 구성된 딥 러닝 모델(31)을 활용하여 사진에서 객체를 식별할 수 있다. Referring to FIG. 4, the photo
컨볼루션 계층(convolution lalyer)은 이미지의 각 영역을 복수의 필터를 이용하여 피처 맵(feature map)를 만들어낸다. 풀링 계층 또는 서브샘플링 계층 (subsampling layer)은 피처 맵(feature map)의 크기를 줄여 위치나 회전의 변화에 불변하는 이미지에 대한 피처(feature)를 추출한다. The convolution layer creates a feature map for each area of the image using multiple filters. The pooling layer or subsampling layer reduces the size of the feature map and extracts features for the image that are invariant to changes in position or rotation.
다중 컨벌루션 계층 및 풀링 계층(33)은 컨벌루션(convolution) 및/ 또는 풀링(pooling)을 반복함으로써 이미지에서 점, 선, 면 등의 저수준의 피처에서부터 복잡하고 의미 있는 고수준의 피처까지 다양한 수준의 피처를 추출할 수 있다.The multiple convolution layer and pooling
완전 연결 계층(34)는 이미지 전체의 관계를 고려하여 결과값을 출력한다. The fully connected
사진 객체 인식 모듈(26)을 구성하는 딥 러닝 모델(31)은, 학습 데이터로 학습을 진행하고, 테스트를 거쳐 최종적으로 사진에서 객체를 식별하는데 활용된다. The
사진 관리 장치(10)가 통신 단말기인 경우, 서버에서 학습된 딥 러닝 모델이 포함된 사진 객체 인식 모듈(26)을 다운받아 통신 단말기에 저장되어 실행될 수 있다. 통신 단말기에 저장된 딥 러닝 모델(31)은 주기적으로 또는 비주기적으로 서버에서 학습이 추가로 진행된 딥 러닝 모델로 업데이트될 수 있다. If the
도 3을 다시 참조하면, 흔들린 사진 감지 모듈(28)은 가우시안 기저 필터를 이용한 방법, 가장자리의 흐림 정도 측정 및 가장자리 선명도 분석 방법 및 라플라시안의 분산을 이용하여 사진의 흐릿함을 판단하여 사진이 흔들렸는지 여부를 판단할 수 있다. Referring again to FIG. 3, the shaken
흔들린 사진 감지 모듈(28)이 라플라시안 분산을 이용하여 사진의 흐릿함을 판단할 경우, 사진을 흑백으로 변환한 후 라플라시안 분산을 계산하여 사진의 흐릿함을 판단할 수 있다. When the blurred
도 5는 흔들린 사진 감지 모듈이 라플라시안 분산을 이용하여 사진의 흐릿함을 판단하는 과정을 도시하고 있다. Figure 5 shows the process by which the blurred photo detection module determines the blurriness of the photo using Laplacian distribution.
도 5를 참조하면, 흔들린 사진 감지 모듈(28)이 라플라시안 분산을 이용하여 사진의 흐릿함을 판단할 경우, 사진에 포함된 입력 이미지(35)에 대해 흑백으로 변환하여 흑백 이미지(36)로 만든 후 라플라시안 분산을 계산하여 라플라시안 분산값(37)을 얻을 수 있다. 흔들린 사진 감지 모듈(28) 이 라플리안 분산값(37)을 이용하여 사진의 흐릿함을 판단할 수 있다. Referring to FIG. 5, when the blurred
도 6은 도 3의 어두운 사진 감지 모듈에서 활용하는 딥 러닝 모델의 구성도이다. Figure 6 is a configuration diagram of a deep learning model used in the dark photo detection module of Figure 3.
도 6을 참조하면, 어두운 사진 감지 모듈(30)은 CNN 기반 딥 러닝 모델(38)을 활용하여 사진이 어두운지 여부를 결정할 수 있다. 전술한 바와 같이, 본 명세에서 CNN 기반 딥 러닝 모델을 이용하는 것으로 예시적으로 설명하나 본 발명은 이에 제한되지 않고 현재 또는 장래 다양한 딥 러닝 모델을 이용할 수 있다. Referring to FIG. 6, the dark
예를 들어 도 6에 도시한 바와 같이, 어두운 사진 감지 모듈(30)은다중 컨벌루션 계층(multiple convolution layers) 및 풀링 계층(40) 및 완전 연결 계층(fully connected layers)(42)으로 구성된 딥 러닝 모델(38)을 활용하여 사진이 어두운지 여부를 결정할 수 있다. For example, as shown in Figure 6, the dark
딥 러닝 모델(38)은 각 개별 계층에 존재하는 파라미터를 최적으로 학습시키는 것을 목표로 한다. 딥 러닝 모델(38)은 랜덤 샘플링(데이터 순서 랜덤)과 정규화 기술(regularization technique)을 적용할 수 있다. 랜덤 샘플링은 학습 데이터 셋에서 학습되는 학습 데이터들의 순서가 다르다는 것을 의미한다. The
정규화 기술은 노이즈까지 포함된 학습 데이터에 과도하게 학습된 딥 러닝 모델이 정확성이 오히려 떨어지는 오버피팅을 줄이는 기술이다. 정규화 기술은 예를 들어 드롭 아웃 기술이나 드롭 커넥티드 기술 등일 수 있다. Normalization technology is a technology that reduces overfitting, which reduces the accuracy of deep learning models that are overly trained on training data containing noise. The normalization technology may be, for example, a drop-out technology or a drop-connected technology.
드롭 아웃 기술은 특정 노드를 확률적으로 배제(제외)하고 학습시키는 방법이다. 드롭 커넥티드 기술은 노드들 간의 커넥티드를 드롭하고 학습시키는 방법이다. 이하에서 정규화 기술로 이하에서, 드롭 아웃 기술을 예시적으로 설명하나, 현재 또는 장래에 오버피팅을 줄이는 어떠한 기술 또는 알고리즘일 수 있다.Dropout technology is a method of probabilistically excluding (excluding) specific nodes and learning them. Drop connected technology is a method of dropping and learning connections between nodes. Below, the dropout technique is described as an example of a regularization technique, but it may be any technique or algorithm that reduces overfitting currently or in the future.
어두운 사진 감지 모듈(30)에서 활용하는 딥 러닝 모델(38)은, 학습 데이터로 학습할 때, 각 계층에 있는 노드를 특정 확률로 제거하여 학습시키고, 학습이 완료되고 테스트를 할 때에는 원래대로 모든 노드를 고려하고 노드마다 가지고 있는 가중치를 상기 확률을 곱한 드롭 아웃 기술을 적용할 수 있다.The deep learning model (38) used in the dark photo detection module (30) is trained by removing nodes in each layer with a certain probability when learning with training data, and when learning is completed and testing, everything is restored to its original state. A dropout technique can be applied by considering the nodes and multiplying the weight each node has by the above probability.
도 7a 및 도 7b는 도 3의 어두운 사진 감지 모듈에서 사용하는 딥 러닝 모델이 드롭 아웃 기술을 적용한 경우와 적용하지 않은 경우에 모든 노드들의 연결 상태들을 도시하고 있다. 도 7b에서 은 각 계층에서 제거된 노드를 의미한다. Figures 7a and 7b show the connection states of all nodes when the deep learning model used in the dark photo detection module of Figure 3 applies the dropout technology and when it does not. In Figure 7b refers to the nodes removed from each layer.
도 7a 및 도 7b를 참조하면, 어두운 사진 감지 모듈(30)에서 사용하는 딥 러닝 모델(38)은, 학습 데이터로 학습할 때, 각 계층에 있는 노드를 특정 확률 p로 제거하여 학습시키고, 학습이 완료되고 실제 이미지을 분류할 때에는 원래대로 모든 노드를 고려하고 노드마다 가지고 있는 가중치를 확률 p에 곱한 드롭 아웃 기술을 적용할 수 있다. Referring to FIGS. 7A and 7B, when learning with training data, the
드롭 아웃 기술은, 딥 러닝 모델(38)이 학습할 때, 랜덤하게 각 계층에 있는 노드를 제거하여 학습을 방해함으로써, 학습이 학습 데이터에 치우치는 오버피팅(overfitting)을 막아줄 수 있다. Dropout technology can prevent overfitting, in which learning is biased toward the learning data, by randomly removing nodes in each layer when the
딥 러닝 모델(38)의 목표는 인공 신경망 형태의 모델을 통해 입력에 대한 어떤 확률적인 예측을 하는 것이며 이 예측이 실제값(ground-truth) 확률과 최대한 유사하게 모델 파라미터를 조정하는 것이다. 예를 들어, 실제값 확률은 y=(1.0, 0.0)인데 딥 러닝 모델의 예측이 Y=(0.4, 0.6)이었다면 모델 파라미터는 Y가 좀더 y에 '가까운' 값을 가질 수 있도록 조정되어야 한다. 여기서 '가까운”을 판단하는 척도, 다르게 말하자면 다른 지를 판단하는 방법이 필요하게 된다. 딥 러닝 분야에서 이를 위해 손실함수를 정의하고 있다. 딥 러닝 모델(38)은 손실함수로 교차 엔트로피(cross entropy)를 사용할 수 있다. The goal of the
다시 도 3을 참조하면, 유사 사진 감지 모듈(32)은 객체 인식 모듈(26)에 의해 식별한 객체에 따른 사진의 주제와 시간, 위치 정보를 이용하여 사진들에서 유사 사진을 검색할 수 있다. Referring again to FIG. 3 , the similar
이상 도 1 내지 도 7b를 참조하여 일 실시예에 따른 사진 관리 장치(10)를 설명하였다. 이하에서 도 8을 참조하여 또 다른 실시예에 따른 사진 관리 방법을 설명한다. 다만, 시진 관리 장치(10)에서 설명한 내용으로 사진 관리 방법에 동일하게 적용할 수 있는 내용은 생략하거나 약술한다. The
도 8은 또다른 실시예에 따른 사진 관리 방법의 흐름도이다.Figure 8 is a flowchart of a photo management method according to another embodiment.
도 8을 참조하면, 또다른 실시예에 따른 사진 관리 방법(44)은 사진들을 저장하는 단계(S46) 및 저장된 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 단계(S48), 삭제를 추천한 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력하는 단계(S50)를 포함한다. Referring to FIG. 8, the
불필요한 사진은, 흔들린 사진 및 어두운 사진, 유사 사진, 스크린 샷 중 적어도 하나일 수 있다. Unnecessary photos may be at least one of shaken photos, dark photos, similar photos, and screenshots.
도 9는 도 8의 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 단계의 흐름도이다. Figure 9 is a flowchart of steps for recommending deletion of the unnecessary picture in Figure 8.
불필요한 사진인 경우 해당 사진의 삭제를 추천하는 단계(S48)는, 사진에서 객체를 식별하는 사진 객체 인식 단계(S48a)와 사진이 흔들린지 여부를 판단하는 흔들린 사진 감지 단계(S48b), 사진이 어두운지 여부를 결정하는 어두운 사진 감지 단계(S48c), 사진들에서 유사 사진을 검색하는 유사 사진 감지 단계(S48d), 스크린 샷 검색 단계(S48e) 중 적어도 하나를 포함할 수 있다. If the photo is unnecessary, the step of recommending deletion of the photo (S48) includes a photo object recognition step (S48a) that identifies the object in the photo, a shaken photo detection step (S48b) that determines whether the photo is shaken, and a photo object recognition step (S48b) that determines whether the photo is shaken. It may include at least one of a dark photo detection step (S48c) for determining whether or not to use a dark photo, a similar photo detection step (S48d) for searching for similar photos in photos, and a screen shot search step (S48e).
사진 객체 인식 단계(S48a)는 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층(pooling layer) 및 완전 연결 계층(fully connected layers)으로 구성된 딥 러닝 모델을 활용하여 사진에서 객체를 식별할 수 있다. The photo object recognition step (S48a) can identify objects in the photo by utilizing a deep learning model consisting of multiple convolution layers, a pooling layer, and a fully connected layer.
흔들린 사진 감지 단계(S48b)는 라플라시안 분산을 이용하여 사진의 흐릿함을 판단할 경우, 사진을 흑백으로 변환한 후 라플라시안 분산을 계산하여 사진의 흐릿함을 판단할 수 있다. In the shaken photo detection step (S48b), when the blurriness of a photo is determined using Laplacian variance, the blurriness of the photo can be determined by converting the photo to black and white and then calculating the Laplacian variance.
어두운 사진 감지 단계(S48c)는 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층 및 완전 연결 계층(fully connected layers)으로 구성된 딥 러닝 모델을 활용하여 상기 사진이 어두운지 여부를 결정할 수 있다. 어두운 사진 감지 단계(S48c)에서 활용하는 딥 러닝 모델은, 학습 데이터로 학습할 때, 각 계층에 있는 노드를 특정 확률로 제거하여 학습시키고, 학습이 완료되고 테스트를 할 때에는 원래대로 모든 노드를 고려하고 노드마다 가지고 있는 가중치를 확률을 곱한 드롭 아웃 기술을 적용할 수 잇다. The dark photo detection step (S48c) may determine whether the photo is dark by utilizing a deep learning model consisting of multiple convolution layers, a pooling layer, and a fully connected layer. The deep learning model used in the dark photo detection step (S48c) is trained by removing nodes in each layer with a certain probability when learning with training data, and when learning is completed and testing, all nodes are considered as original. And you can apply a dropout technique that multiplies the probability by the weight each node has.
유사 사진 감지 단계(S48d)는 객체 인식 모듈에 의해 식별한 객체에 따른 사진의 주제와 시간, 위치 정보를 이용하여 사진들에서 유사 사진을 검색할 수 있다. In the similar photo detection step (S48d), similar photos can be searched among photos using the subject, time, and location information of the photo according to the object identified by the object recognition module.
스크린 샷 검색 단계(S48e)는 카메라에서 사진을 저장할 때 함께 저장하는 사진 메타 정보 테이블에 포함된 스크린 샷 여부를 이용하여 사진들 중에 스크린 샷을 검색할 수 있다. 스크린 샷의 경우, 카메라 모듈에서 스크린샷 여부를 확인하여 메모리부(16)의 사진 메타 정보 테이블의 스크린 샷 필드에 저장한다. 따라서 스크린 샷 검색 단계(S48e)는 사진 메타 정보 테이블을 이용하여 스크린샷 여부를 확인할 수 있다. 이는 유사 사진 감지 단계(S48d)에서 사진 메타 정보 테이블을 이용하는 것과 유사할 수 있다.In the screen shot search step (S48e), a screenshot can be searched among photos using whether or not the screenshot is included in the photo meta information table that is stored together when the photo is saved by the camera. In the case of a screenshot, the camera module checks whether the screenshot is taken and stores it in the screenshot field of the photo meta information table of the
이상 도면을 참조하여 본 발명의 실시예들에 따른 사진 관리 장치와 사진 관리 방법을 설명하였다. 이하에서 사진 관리 장치(10)가 사진 관리 클라우드 서버인 경우 구체적인 실시예 및 실험예를 설명한다. The photo management device and photo management method according to embodiments of the present invention have been described with reference to the drawings above. Below, specific embodiments and experimental examples will be described when the
실시예Example
1. 개요1. Overview
본 실시예에서는 다음과 같은 기능을 제공하는 클라우드 기반 사진 관리 시스템을 주로 제안한다. 클라우드 기반 서비스는 커뮤니케이션의 발전으로 인해 가장 효과적인 방법이라고 할 수있다. 예를 들어, 클라우드 기반 방법을 사용하여 서버 과부하 및 대기 시간 증가 문제를 해결하는 클라우드 기반 상황 인식 시스템을 제안한다. In this embodiment, we mainly propose a cloud-based photo management system that provides the following functions. Cloud-based services can be said to be the most effective method due to advancements in communication. For example, we propose a cloud-based situational awareness system that solves the problems of server overload and increased latency using cloud-based methods.
첫째, 잘못 찍은 사진을 구분하는 기능을 제공한다. 잘못 찍은 사진은 어둡고 흔들린 사진으로 보관할 필요가 없다. 딥 러닝을 이용하여 어두운 사진을 분류하는 모델을 생성하고 OpenCV의 사진 분석 모듈를 이용하여 흔들린 사진을 분류한다.First, it provides a function to distinguish between incorrectly taken photos. There is no need to keep poorly taken photos as dark and blurry photos. Create a model to classify dark photos using deep learning and classify blurred photos using OpenCV's photo analysis module.
둘째, 클라우드 기반 사진 관리 시스템(52)은 유사 사진을 검색하는 기능을 제공한다. 사람들은 더 나은 사진을 얻기 위해 같은 피사체의 사진을 여러 번 찍는 경향이 있다. 그 결과 유사 사진의 수가 매우 많아서 어려움이 있다. 사진의 피사체를 파악하기 위해 딥 러닝 기반의 YOLO 객체 인식 모델을 채택하고 사진에 대한 유사성 테스트를 수행하여 유사 사진을 찾는다. Second, the cloud-based
클라우드 기반 사진 관리 시스템(52)은 위의 두 가지 기능을 제공하여 불필요한 사진을 확인하고 사용자가 불필요한 사진을 스스로 삭제하거나 자동으로 삭제할 수 있도록 사진 삭제를 권장한다. 저장 공간을 절약하고 효과적인 사진 관리를 지원한다.The cloud-based
2. 클라우드 기반 사진 관리 시스템의 구조2. Structure of cloud-based photo management system
제안된 클라우드 기반 사진 관리 시스템(52)는 도 10과 같은 구조를 갖는다. 클라우드 기반 사진 관리 시스템은 도 1에서 메모리부에 해당하는 사진 저장부(54)와 제어부에 해당하는 사진 분석부(56)로 구성된다. The proposed cloud-based
사진 저장부(54)에서 사진 저장 섹션은 Firebase 데이터베이스를 사용하여 사진을 관리하고 사용자의 사진을 저장할 수 있는 공간을 제공한다. 데이터베이스에는 스마트 폰으로 찍은 사진의 메타 정보(위도/경도, 날짜, 시간, 파일 이름 등)와 서버에 있는 사진의 위치가 저장된다. 데이터베이스 구조가 도 2에 표시된다.In the
도 2를 참조하여 설명한 바와 같이 사진 저장부(54)로 사용하는 데이터 베이스는 사용자 테이블(user table) 및 사진 메타 정보 테이블(photo meta information table), 사진 태그 테이블(photo tag table), 삭제 정보 테이블(deletion information table)를 포함한다. As explained with reference to FIG. 2, the database used as the
사진 분석부(56)는 제안된 서비스의 주된 목적인 불필요한 사진을 분류하기 위해 사진 분석을 수행한다. 불필요한 사진은 어두운 사진, 흔들린 사진, 유사 사진, 스크린 샷 중 적어도 하나로 구성된다. The
클라우드 기반 사진 관리 시스템(52)의 사진 분석부(56)는 불필요한 사진을 자동으로 분류하는 기능을 제공한다. 불필요한 사진을 삭제하여 저장 공간을 효율적으로 관리하고 사용자가 쉽게 사진을 관리 할 수 있도록 한다. The
사진 객체 인식 모듈(Photo Object Recognition module)은 YOLO (You Only Look Once) 알고리즘을 사용하여 사진에서 객체를 식별한다. 사진 태그는 사진 검색에 사용되며 유사 사진 검색 기능은 사진의 태 그 및 메타 정보를 이용하여 유사 사진을 검색한다.The Photo Object Recognition module uses the YOLO (You Only Look Once) algorithm to identify objects in photos. Photo tags are used for photo search, and the similar photo search function searches for similar photos using the photo's tags and meta information.
흔들린 사진 감지 모듈(Shaky photo Detection module)은 OpenCV의 이미지 분석 모듈을 사용하여 구현되며 사진의 흔들림 여부를 판단한다. The shakey photo detection module is implemented using OpenCV's image analysis module and determines whether the photo is shaken.
어두운 사진 감지 모듈(Dark photo Detection module)은 딥 신경망 모델인 Tensorflow 및 Keras를 사용하여 생성된 모델은 주어진 사진이 어두운 지 여부를 결정한다. The Dark photo Detection module is a deep neural network model created using Tensorflow and Keras to determine whether a given photo is dark.
유사 사진 감지 모듈(Similar photo search module)은 사진 객체 인식 모듈(Photo Object Recognition module)에 의해 태킹된 사진의 태그 및 메타 정보를 이용하여 유사 사진을 검색 한다.The Similar photo search module searches for similar photos using tags and meta information of photos tagged by the Photo Object Recognition module.
스크린 샷 검색 모듈(Screen shot search module)은 카메라 모듈에서 스크린샷 여부를 확인하여 사진 저장부(54)의 사진 메타 정보 테이블에 포함된 스크린 샷 여부를 이용하여 사진들 중에 스크린 샷을 검색할 수 있다. The screen shot search module checks whether a screenshot is taken from the camera module and can search for a screenshot among photos using whether or not it is a screenshot included in the photo meta information table of the
3. 클라우드 기반 사진 관리 시스템의 기능3. Features of a cloud-based photo management system
제안된 클라우드 기반 사진 관리 시스템(52)의 기능을 제공하기 위한 주요 기능 및 방법에 대해 설명한다. The main functions and methods for providing the functions of the proposed cloud-based photo management system (52) are described.
첫째, 클라우드 기반 사진 관리 시스템(52)은 사진 저장 기능을 제공한다. 이것은 사용자의 스마트 폰에 사진을 저장 하는 기능이며 네이버 드라이브와 같은 저장 기능이다. 실제 사진 파일을 관리하기 위해 전술한 바와 같이 데이터베이스가 사용되었다. First, the cloud-based
둘째, 클라우드 기반 사진 관리 시스템(52)은 사진 객체 인식 모듈(Photo Object Recognition module)을 활용하여 사진 객체 태깅 기능을 제공한다. 이 기능은 사진의 피사체를 인식하고 적절한 태그를 부착한다. 이것은 스마트 폰의 태깅 기능에 추가된 기능으로 사진 검색에 사용된다. 클라우드 기반 사진 관리 시스템(52)은 표 1과 같이 사진을 사람, 동물, 자동차, 가구, 책, 가 방, 스포츠, 음식, 기기 등 9 가지 객체 유형 중 하나로 태깅할 수 있으나, 이에 제한되지 않고 객체 유형은 확장되거나 축소되거나 변형될 수 있다. Second, the cloud-based
객체 인식을 위해 딥 러닝 기반의 객체 인식 모델인 YOLO (You Only Look Once)를 사용한다. YOLO 시스템은 하나의 신경망을 이용하여 실시간으로 모든 객체를 감지하기 위해 개발되었다. YOLO 시스템은 이미지를 한번 보고 어떤 객체가 어느 위치에 있는지 예측한다. For object recognition, YOLO (You Only Look Once), a deep learning-based object recognition model, is used. The YOLO system was developed to detect all objects in real time using a single neural network. The YOLO system looks at an image once and predicts which object is where.
YOLO 시스템은 기존 이미지 인식 시스템과 객체의 위치를 식별하는 방법을 결합한 것이다. YOLO 시스템은 객체 감지 문제를 공간으로 분리된 경계 상자의 확률을 추정하는 회귀 문제로 정의하고 신경망을 사용하여 해결하려고 시도한다. 결과적으로 YOLO 시스템은 도 4에 도시한 바와 같이 기존 CNN에서와 같이 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층 및 완전 연결 계층(fully connected layers)으로 구성된다. The YOLO system combines existing image recognition systems and methods for identifying the location of objects. The YOLO system defines the object detection problem as a regression problem that estimates the probability of spatially separated bounding boxes and attempts to solve it using a neural network. As a result, the YOLO system is composed of multiple convolution layers, pooling layers, and fully connected layers like in existing CNNs, as shown in FIG. 4.
본 실시예에서는 사전 훈련된 YOLOv3의 가중치 값 (https://pjreddie.com/media/files/yolov3.weights에서 제공되는 yolov3.cfg)과 1000 장의 사진을 사용하여 객체 인식 모델을 조정했다. In this example, the object recognition model was adjusted using pre-trained YOLOv3 weight values (yolov3.cfg available at https://pjreddie.com/media/files/yolov3.weights) and 1000 photos.
셋째, 클라우드 기반 사진 관리 시스템(52)은 흔들린 사진 감지 모듈(Shaky photo Detection module)을 활용하여 흔들린 사진을 구분하는 기능을 제공하며 흔들린 사진은 OpenCV (Open Source Computer Vision) 라이브러리를 이용하여 인식한다. Third, the cloud-based
사진의 흔들림 여부를 판단하기 위해 사진의 흐릿함을 판단한다. 전술한 바와 같이, 흐려진 이미지를 감지하기 위해 가우시안 기저 필터를 이용한 방법, 가장자리의 흐림 정도 측정 및 가장자리 선명도 분석, 라플라시안의 분산 등을 사용할 수 있다. The blurriness of the photo is assessed to determine whether the photo is blurry. As described above, to detect a blurred image, a method using a Gaussian basis filter, measurement of the degree of blurring of edges, analysis of edge sharpness, Laplacian dispersion, etc. can be used.
본 실시예에서는 라플라시안의 분산을 채택한다 . OpenCV 라이브러리를 사용하여 값을 쉽게 계산할 수 있기 때문에 사진의 흐릿함을 결정한다. 분산값이 임계값(여기서는 알파)보다 작으면 흐릿한 사진으로 결정된다. 라플라시안은 필드의 "곡률" 또는 스트레스라고 할 수 있는 것을 측정한다. 그것은 필드의 값이 주변 포인트에 대한 평균 가치와 얼마나 다른지 알려준다. 따라서 사진이 흔들린 정도를 측정하는 데 사용할 수 있다. 도 5에 도시한 바와 같이 라플라시안의 분산을 계산하기 위해 먼저 사진을 흑백으로 변환한다. In this embodiment, Laplacian variance is adopted. Determine the blurriness of a photo, as the values can be easily calculated using the OpenCV library. If the variance value is less than the threshold (here alpha), the photo is determined to be blurry. The Laplacian measures what can be called the "curvature" or stress of a field. It tells how much the value of the field differs from the average value for surrounding points. Therefore, it can be used to measure the degree of shaking in a photo. As shown in Figure 5, to calculate the Laplacian variance, the photo is first converted to black and white.
아래 박스는 사진의 흔들림 여부를 확인하는 알고리즘을 보여준다. 이 알고리즘은 OpenCV 라이브러리를 사용하여 사진을 흑백으로 변환하고 라플라시안의 분산을 계산한다: cvtColor(photo, cv2.COLOR_BGR2GRAY) 및 Laplacian(photo, cv2. CV_64F).var(). 임계값(알파)은 샘플 사진을 사용한 실험을 통해 400으로 설정되었다.The box below shows the algorithm that checks whether a photo is shaken. This algorithm uses the OpenCV library to convert a photo to black and white and calculate the variance of the Laplacian: cvtColor(photo, cv2.COLOR_BGR2GRAY) and Laplacian(photo, cv2. CV_64F).var(). The threshold (alpha) was set to 400 through experiments using sample photos.
넷째, 클라우드 기반 사진 관리 시스템(52)은 어두운 사진 감지 모듈(Dark photo Detection module)을 활용하여 어두운 사진을 구분하는 기능을 제공한다. Tensorflow와 Keras를 사용하여 어두운 사진을 구별하는 도 6에 도시한 바와 같이딥 러닝 모델을 생성한다. Tensorflow 버전 2.0 및 Keras 버전 2.2.0을 사용한다. Fourth, the cloud-based
표 2는 일반 CNN의 구조가 적용된 모델의 구조를 보여준다. 어두운 사진 감지 모델 구조는 일반적인 CNN 구조이며 약 330K 매개 변수가 있다. 상대적으로 적은 수이기 때문에 많은 데이터와 학습 시간 이 필요하지 않다.Table 2 shows the structure of the model to which the general CNN structure is applied. The dark photo detection model structure is a typical CNN structure and has about 330K parameters. Because the number is relatively small, a lot of data and learning time are not needed.
다섯째, 클라우드 기반 사진 관리 시스템(52)은 유사 사진 감지 모듈(Dark photo search module)을 활용하여 유사 사진을 검색하는 기능을 제공한다. 좋은 사진을 얻기 위해 같은 피사체의 사진을 여러 번 찍는 경향이 있어 유사 사진이 많이 있다. 사진의 주제, 시간, 위치 정보를 이용하여 유사 사진을 검색하여 사용자에게 알린다.Fifth, the cloud-based
아래 박스는 유사 사진을 검색하는 알고리즘을 보여준다. 알고리즘은 알파, 베타 및 감마의 세 가지 임계 값을 허용한다. 알파는 시간 범위에 대한 임계값이고, 베타는 경도 범위에 대한 것이고, 감마는 위도 범위에 대한 것이다. 시간, 위도 및 경도가 임계 값 이내인 사진은 유사 사진으로 선택된다.The box below shows the algorithm for searching similar photos. The algorithm allows three thresholds: alpha, beta and gamma. Alpha is the threshold for the time range, beta is for the longitude range, and gamma is for the latitude range. Photos whose time, latitude, and longitude are within the threshold are selected as similar photos.
마지막으로, 클라우드 기반 사진 관리 시스템(52)은 스크린 샷 검색 모듈(Screen shot search module)을 활용하여 사진들 중에 스크린 샷을 검색하는 기능을 제공한다. 화면을 일시적으로 저장하기 위해 화면을 캡쳐한 스크린 샷을 사진으로 저장하는 경우가 많이 있다. 이러한 스크린 샷은 저장한 목적을 수행한 이후에 불필요한 사진에 해당하므로, 스크린 샷 촬영시 스크린 샷인지를 사진 메타 정보 테이블에 저장해 놓았다가 불필한 사진을 정리할 때 동시에 삭제될 수 있다. Lastly, the cloud-based
4. 실험결과 4. Experiment results
이 실험예로 학습 과정과 어두운 사진 감지 모델의 결과를 제시한다. 사진 객체 인식 모듈은 그대로 YOLOv3를 채택하고 있다. In this experimental example, we present the learning process and results of the dark photo detection model. The photo object recognition module adopts YOLOv3 as is.
클라우드 기반 사진 관리 시스템(52)의 주요 목적은 불필요한 사진을 찾아 삭제하도록 권장하는 것이다. 이 실험예에서는 클라우드 기반 사진 관리 시스템(52)에서 제공하는 기능을 사용한 삭제 권장 기능과 결과를 제시한다.The main purpose of the cloud-based
4.1 어두운 사진 감지 모델4.1 Dark photo detection model
표 3은 어두운 사진 감지 모델을 학습하기 위한 환경을 보여준다. 훈련 및 검증 데이터에는 354 개의 밝은 사진과 366 개의 어두운 사진이 있다. 테스트 데이터에는 밝은 사진 46 장과 어두운 사진 34 장이 있으며 훈련 과정에서 조기 중지를 적용하고 훈련은 13 Epoch에서만 완료된다. 이진 분류 문제로서 매우 적은 Epoch로 좋은 성능의 모델을 생성할 수 있다.Table 3 shows the environment for learning a dark photo detection model. The training and validation data include 354 light photos and 366 dark photos. The test data contains 46 bright photos and 34 dark photos. Early stopping is applied during the training process, and training is completed only at 13 epochs. As a binary classification problem, a model with good performance can be created with very few epochs.
도 11은 실시예에 따른 모델 학습 과정을 보여준다. Figure 11 shows a model learning process according to an embodiment.
도 11을 통해 알 수 있는 바와 같이, 80 개의 테스트 데이터를 사용하여 측정한 모델의 예측 정확도는 95 %이며, 이 결과는 생성된 모델이 어두운 사진을 적절하게 구분 한다는 것을 뒷받침한다.As can be seen in Figure 11, the prediction accuracy of the model measured using 80 test data is 95%, and this result supports that the generated model appropriately distinguishes dark photos.
4.2 사진 삭제 권장 사항 4.2 Recommendations for deleting photos
클라우드 기반 사진 관리 시스템(52)은 클라우드 기반 사진 관리 서비스로 사진을 효과적으로 관리하고 저장 공간의 효율성을 향상시킨다. 따라서 가장 중요한 기능은 삭제 추천 기능이다. 즉, 흔들린 사진, 비슷한 사진, 어두운 사진 등 불필요한 사진을 확인하고 삭제 하는 것이 좋다. 스마트 폰에서 클라우드 스토리지로 사진을 백업 할 때 흔들림/어두움 정도 판단, 사진 객체 인식을 이용한 유사 사진 검색 등 사진 분석 과정을 거쳐 사진 삭제 여부를 판단한다. The cloud-based
도 12는 클라우드 기반 사진 관리 시스템(52)에서 사진 관리 서비스를 제공받은 스마트 폰의 출력부(20)의 일부 이미지이다. Figure 12 is a partial image of the
도 12의 (a)에서는 피사체 인식 결과에 따라 사진이 분류된다. 도 12의 (b)는 사진 삭제 권장 이미지이다. In Figure 12(a), photos are classified according to the subject recognition results. Figure 12(b) is an image recommended for photo deletion.
비슷한 사진, 흔들린 사진, 어두운 사진으로 나누어져 있어 삭제 추천이 된 이유를 알 수 있다. 도 12의 (b)은 유사 사진 탭의 모양을 보여 주며 유사 사진이 적절하게 권장되었음을 알 수 있다.Since it is divided into similar photos, blurry photos, and dark photos, you can see why it was recommended for deletion. Figure 12 (b) shows the appearance of the similar photo tab, and it can be seen that similar photos are appropriately recommended.
이상 도 10 내지 도 12를 참조하여, 딥 러닝을 활용한 클라우드 기반 사진 관리 서비스를 제공하는 클라우드 기반 사진 관리 시스템(52)을 설명하였다. With reference to FIGS. 10 to 12, the cloud-based
전술한 클라우드 기반 사진 관리 시스템(52)은 다음과 같은 기능을 제공한다. 첫째, 스마트 폰에 저장된 사진을 백업하는 기능을 제공한다. 둘째, 저장 공간의 효율성을 높이기 위해 불필요한 사진을 확인하는 기능을 제공한다. 클라우드 기반 사진 관리 시스템(52)이 다른 사진 관리 서비스와 가장 다른 점은 불필요한 사진을 확인하는 기능이다. 클라우드 기반 사진 관리 시스템(52)은 어두운 사진, 흔들린 사진, 유사 사진 및 스크린 샷과 같은 불필요한 그림을 확인할 수 있다. The above-described cloud-based
클라우드 기반 사진 관리 시스템(52)을 개발하는 과정에서 Tensorflow와 Keras를 사용하여 딥 러닝 기반 모델을 만들어 어두운 사진을 분류하는 모델을 만들었다. 그리고 딥 러닝 기반의 객체 인식 모델인 YOLOv3를 적용하여 사진의 피사체를 인식하고 이를 이용하여 유사 사진 검색 기능을 구현했다. 또한 OpenCV를 사용하여 흔들린 사진을 인식하는 모듈을 구현했다. In the process of developing a cloud-based photo management system (52), we created a deep learning-based model using Tensorflow and Keras to classify dark photos. In addition, YOLOv3, a deep learning-based object recognition model, was applied to recognize the subject of the photo and use it to implement a similar photo search function. We also implemented a module to recognize shaken photos using OpenCV.
실시예를 통해 어두운 사진, 흔들린 사진, 유사한 사진, 스크린 샷이 제대로 검색되었는지 확인했다. 현재 스마트 폰에서 클라우드 기반 사진 관리 시스템(52)을 이용할 수 있는 애플리케이션이 제공되고 있지만, 웹과 다양한 단말을 통해 클라우드 기반 사진 관리 시스템(52)을 이용할 수 있다. 이는 많은 사람들에게 사진 관리의 편리함을 제공하는 데 기여할 것으로 기대된다.Through the example, we confirmed that dark photos, shaken photos, similar photos, and screenshots were properly searched. Currently, an application that can use the cloud-based
이상 도면을 참조하여 본 발명의 실시예들에 따른 사진 관리 장치와 사진 관리 방법을 설명하였으나, 본 발명은 이에 제한되지 않는다. Although the photo management device and photo management method according to embodiments of the present invention have been described with reference to the drawings, the present invention is not limited thereto.
상술한 사진 관리 장치(10)는, 프로세서, 메모리, 사용자 입력장치, 프레젠테이션 장치 중 적어도 일부를 포함하는 컴퓨팅 장치에 의해 구현될 수 있다. 메모리는, 프로세서에 의해 실행되면 특정 태스크를 수행할 있도록 코딩되어 있는 컴퓨터-판독가능 소프트웨어, 애플리케이션, 프로그램 모듈, 루틴, 인스트럭션(instructions), 및/또는 데이터 등을 저장하는 매체이다. 프로세서는 메모리에 저장되어 있는 컴퓨터-판독가능 소프트웨어, 애플리케이션, 프로그램 모듈, 루틴, 인스트럭션, 및/또는 데이터 등을 판독하여 실행할 수 있다. 사용자 입력장치는 사용자로 하여금 프로세서에게 특정 태스크를 실행하도록 하는 명령을 입력하거나 특정 태스크의 실행에 필요한 데이터를 입력하도록 하는 수단일 수 있다. 사용자 입력장치는 물리적인 또는 가상적인 키보드나 키패드, 키버튼, 마우스, 조이스틱, 트랙볼, 터치-민감형 입력수단, 또는 마이크로폰 등을 포함할 수 있다. 프레젠테이션 장치는 디스플레이, 프린터, 스피커, 또는 진동장치 등을 포함할 수 있다.The
컴퓨팅 장치는 스마트폰, 태블릿, 랩탑, 데스크탑, 서버, 클라이언트 등의 다양한 장치를 포함할 수 있다. 컴퓨팅 장치는 하나의 단일한 스탠드-얼론 장치일 수도 있고, 통신망을 통해 서로 협력하는 다수의 컴퓨팅 장치들로 이루어진 분산형 환경에서 동작하는 다수의 컴퓨팅 장치를 포함할 수 있다.Computing devices may include a variety of devices such as smartphones, tablets, laptops, desktops, servers, and clients. A computing device may be a single stand-alone device or may include multiple computing devices operating in a distributed environment comprised of multiple computing devices cooperating with each other through a communication network.
또한 상술한 사진 관리 방법은, 프로세서를 구비하고, 또한 프로세서에 의해 실행되면 사진 관리 방법을 수행할 수 있도록 코딩된 컴퓨터 판독가능 소프트웨어, 애플리케이션, 프로그램 모듈, 루틴, 인스트럭션, 및/또는 데이터 구조 등을 저장한 메모리를 구비하는 컴퓨팅 장치에 의해 실행될 수 있다.In addition, the photo management method described above includes a processor and computer readable software, applications, program modules, routines, instructions, and/or data structures, etc. coded to perform the photo management method when executed by the processor. It can be executed by a computing device having a stored memory.
상술한 본 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다.The above-described embodiments can be implemented through various means. For example, the present embodiments may be implemented by hardware, firmware, software, or a combination thereof.
하드웨어에 의한 구현의 경우, 본 실시예들에 따른 사진 관리 방법은 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 컨트롤러, 마이크로 컨트롤러 또는 마이크로 프로세서 등에 의해 구현될 수 있다. In the case of hardware implementation, the photo management method according to the present embodiments uses one or more ASICs (Application Specific Integrated Circuits), DSPs (Digital Signal Processors), DSPDs (Digital Signal Processing Devices), and PLDs (Programmable Logic Devices). , can be implemented by FPGAs (Field Programmable Gate Arrays), processors, controllers, microcontrollers, or microprocessors.
예를 들어 실시예들에 따른 딥 러닝 모델을 활용한 사진 관리 방법은 심층 신경망의 뉴런(neuron)과 시넵스(synapse)가 반도체 소자들로 구현된 인공지능 반도체 장치를 이용하여 구현될 수 있다. 이때 반도체 소자는 현재 사용하는 반도체 소자들, 예를 들어 SRAM이나 DRAM, NAND 등일 수도 있고, 차세대 반도체 소자들, RRAM이나 STT MRAM, PRAM 등일 수도 있고, 이들의 조합일 수도 있다. For example, a photo management method using a deep learning model according to embodiments can be implemented using an artificial intelligence semiconductor device in which neurons and synapses of a deep neural network are implemented with semiconductor devices. At this time, the semiconductor device may be currently used semiconductor devices, such as SRAM, DRAM, or NAND, or may be next-generation semiconductor devices such as RRAM, STT MRAM, or PRAM, or a combination thereof.
실시예들에 따른 사진 관리 방법을 인공지능 반도체 장치를 이용하여 구현할 때, 딥 러닝 모델을 소프트웨어로 학습한 결과(가중치)를 어레이로 배치된 시냅스 모방소자에 전사하거나 인공지능 반도체 장치에서 학습을 진행할 수도 있다. When implementing the photo management method according to the embodiments using an artificial intelligence semiconductor device, the results (weights) of learning the deep learning model with software can be transferred to synapse-mimicking elements arranged in an array or learning can be performed on the artificial intelligence semiconductor device. It may be possible.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 실시예들에 따른 사진 관리 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 장치, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리 유닛은 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of implementation using firmware or software, the photo management method according to the present embodiments may be implemented in the form of a device, procedure, or function that performs the functions or operations described above. Software code can be stored in a memory unit and run by a processor. The memory unit is located inside or outside the processor and can exchange data with the processor through various known means.
또한, 위에서 설명한 "시스템", "프로세서", "컨트롤러", "컴포넌트", "모듈", "인터페이스", "모델", 또는 "유닛" 등의 용어는 일반적으로 컴퓨터 관련 엔티티 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어 또는 실행 중인 소프트웨어를 의미할 수 있다. 예를 들어, 전술한 구성요소는 프로세서에 의해서 구동되는 프로세스, 프로세서, 컨트롤러, 제어 프로세서, 개체, 실행 스레드, 프로그램 및/또는 컴퓨터일 수 있지만 이에 국한되지 않는다. 예를 들어, 컨트롤러 또는 프로세서에서 실행 중인 애플리케이션과 컨트롤러 또는 프로세서가 모두 구성 요소가 될 수 있다. 하나 이상의 구성 요소가 프로세스 및/또는 실행 스레드 내에 있을 수 있으며, 구성 요소들은 하나의 장치(예: 시스템, 컴퓨팅 디바이스 등)에 위치하거나 둘 이상의 장치에 분산되어 위치할 수 있다.Additionally, terms such as "system", "processor", "controller", "component", "module", "interface", "model", or "unit" described above generally refer to computer-related entities hardware, hardware and software. It may refer to a combination of, software, or running software. By way of example, but not limited to, the foregoing components may be a process, processor, controller, control processor, object, thread of execution, program, and/or computer run by a processor. For example, both an application running on a controller or processor and the controller or processor can be a component. One or more components may reside within a process and/or thread of execution, and the components may be located on a single device (e.g., system, computing device, etc.) or distributed across two or more devices.
이상의 설명은 본 개시의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 기술 사상의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 또한, 본 실시예들은 본 개시의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이므로 이러한 실시예에 의하여 본 기술 사상의 범위가 한정되는 것은 아니다. 본 개시의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 개시의 권리 범위에 포함되는 것으로 해석되어야 할 것이다. The above description is merely an illustrative explanation of the technical idea of the present disclosure, and those skilled in the art will be able to make various modifications and variations without departing from the essential characteristics of the present disclosure. In addition, the present embodiments are not intended to limit the technical idea of the present disclosure, but rather to explain it, so the scope of the present technical idea is not limited by these embodiments. The scope of protection of this disclosure should be interpreted in accordance with the claims below, and all technical ideas within the equivalent scope should be interpreted as being included in the scope of rights of this disclosure.
Claims (15)
통신망을 통해 다른 장치와 데이터를 주고받는 통신부;
사진들을 저장하는 메모리부;
저장된 상기 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고, 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 제어부; 및
상기 제어부에서 삭제를 추천한 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력하는 출력부를 포함하고,
불필요한 사진은, 흔들린 사진 및 어두운 사진, 유사 사진, 스크린 샷 중 적어도 하나이고,
상기 제어부는, 상기 사진에서 객체를 식별하는 사진 객체 인식 모듈과 상기 사진이 흔들린지 여부를 판단하는 흔들린 사진 감지 모듈, 상기 사진이 어두운지 여부를 결정하는 어두운 사진 감지 모듈, 상기 사진들에서 유사 사진을 검색하는 유사 사진 감지 모듈, 상기 사진들 중에 스크린 샷을 검색하는 스크린 샷 검색 모듈 중 적어도 하나를 포함하고,
상기 사진 객체 인식 모듈은, 상기 사진에 포함된 이미지를 여러개의 그리드로 분할하고, 각 그리드는 객체의 위치를 식별하기 위해 특정 수의 경계 상자들을 예측하고, 각 경계상자에는 신뢰도 점수가 할당되고, 예측된 각 경계상자와 신뢰도 점수를 이용하여 상기 사진에서 객체를 식별하고,
상기 흔들린 사진 감지 모듈은 가우시안 기저 필터를 이용한 방법, 가장자리의 흐림 정도 측정 및 가장자리 선명도 분석 방법 및 라플라시안의 분산을 이용하여 상기 사진의 흐릿함을 판단하여 상기 사진이 흔들렸는지 여부를 판단하고, 상기 흔들린 사진 감지 모듈이 라플라시안 분산을 이용하여 상기 사진의 흐릿함을 판단할 경우, 상기 사진을 흑백으로 변환한 후 라플라시안 분산을 계산하여 상기 사진의 흐릿함을 판단하고,
상기 유사 사진 감지 모듈은 상기 객체 인식 모듈에 의해 식별한 객체에 따른 사진의 주제와 시간, 위치 정보를 이용하여 상기 사진들에서 유사 사진을 검색하고,
상기 스크린 샷 검색 모듈은 상기 사진을 저장할 때 함께 저장하는 사진 메타 정보 테이블에 포함된 스크린 샷 여부를 이용하여 사진들 중에 스크린 샷을 검색하는,
상기 어두운 사진 감지 모듈은 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층(pooling layer) 및 완전 연결 계층(fully connected layers)으로 구성된 딥 러닝 모델을 활용하여 상기 사진이 어두운지 여부를 결정하되,
상기 딥 러닝 모델은, 학습 데이터로 학습할 때, 각 계층에 있는 노드를 특정 확률로 제거하여 학습시키고, 학습이 완료되고 테스트를 할 때에는 원래대로 모든 노드를 고려하고 노드마다 가지고 있는 가중치를 상기 확률을 곱한 드롭 아웃 기술을 적용한 사진 관리 장치.input unit;
A communication unit that exchanges data with other devices through a communication network;
a memory unit that stores photos;
a control unit that analyzes images included in the stored photos to determine whether they are unnecessary photos, and recommends deletion of the photos if they are unnecessary photos; and
An output unit that lists photos recommended for deletion by the control unit and outputs a display for selecting whether to delete the photos,
Unnecessary photos are at least one of blurry photos, dark photos, similar photos, and screenshots.
The control unit includes a photo object recognition module for identifying objects in the photo, a shaken photo detection module for determining whether the photo is shaken, a dark photo detection module for determining whether the photo is dark, and similar photos in the photos. At least one of a similar photo detection module for searching, a screenshot search module for searching for screenshots among the photos,
The photographic object recognition module divides the image included in the photograph into several grids, each grid predicts a certain number of bounding boxes to identify the location of the object, and a confidence score is assigned to each bounding box, Identify objects in the photo using each predicted bounding box and confidence score,
The shaken photo detection module determines whether the photo is blurred by using a method using a Gaussian basis filter, a method of measuring the degree of blur at edges, an edge sharpness analysis method, and Laplacian variance, and determines whether the photo is shaken. When the detection module determines the blurriness of the photo using Laplacian variance, converts the photo to black and white and calculates Laplacian variance to determine the blurriness of the photo,
The similar photo detection module searches for similar photos in the photos using the subject, time, and location information of the photo according to the object identified by the object recognition module,
The screenshot search module searches for a screenshot among photos using whether or not the screenshot is included in a photo meta information table stored together when saving the photo.
The dark photo detection module determines whether the photo is dark by utilizing a deep learning model consisting of multiple convolution layers, a pooling layer, and a fully connected layer,
When learning with training data, the deep learning model trains the nodes in each layer by removing them with a certain probability, and when learning is completed and testing, it considers all nodes as they were and sets the weight each node has to the probability. Photo management device with multiplied dropout technology.
상기 사진 객체 인식 모듈은 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층(pooling layer) 및 완전 연결 계층(fully connected layers)으로 구성된 딥 러닝 모델을 활용하여 상기 사진에서 객체를 식별하는 사진 관리 장치.According to paragraph 1,
The photo object recognition module is a photo management device that identifies objects in the photo by utilizing a deep learning model consisting of multiple convolution layers, a pooling layer, and a fully connected layer.
상기 사진 관리 장치는 클라우드 서버 또는 통신 단말기인 사진 관리 장치. According to paragraph 1,
The photo management device is a cloud server or a communication terminal.
저장된 상기 사진에 포함된 이미지를 분석하여 불필요한 사진인지를 분석하고, 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 단계; 및
삭제를 추천한 상기 사진들을 나열하고 해당 사진들의 삭제 여부를 선택하는 표시를 출력하는 단계를 포함하고,
상기 불필요한 사진은, 흔들린 사진 및 어두운 사진, 유사 사진, 스크린 샷 중 적어도 하나이고,
상기 불필요한 사진인 경우 해당 사진의 삭제를 추천하는 단계는, 상기 사진에서 객체를 식별하는 사진 객체 인식 단계과 상기 사진이 흔들린지 여부를 판단하는 흔들린 사진 감지 단계, 상기 사진이 어두운지 여부를 결정하는 어두운 사진 감지 단계, 상기 사진들에서 유사 사진을 검색하는 유사 사진 감지 단계, 상기 사진들에서 스크린 샷을 검색하는 스크린 샷 검색 단계 중 적어도 하나를 포함하고,
상기 사진 객체 인식 단계는, 상기 사진에 포함된 이미지를 여러개의 그리드로 분할하고, 각 그리드는 객체의 위치를 식별하기 위해 특정 수의 경계 상자들을 예측하고, 각 경계상자에는 신뢰도 점수가 할당되고, 예측된 각 경계상자와 신뢰도 점수를 이용하여 상기 사진에서 객체를 식별하고,
상기 흔들린 사진 감지 단계는 가우시안 기저 필터를 이용한 방법, 가장자리의 흐림 정도 측정 및 가장자리 선명도 분석 방법 및 라플라시안의 분산을 이용하여 상기 사진의 흐릿함을 판단하여 상기 사진이 흔들렸는지 여부를 판단하고, 상기 흔들린 사진 감지 단계가 라플라시안 분산을 이용하여 상기 사진의 흐릿함을 판단할 경우, 상기 사진을 흑백으로 변환한 후 라플라시안 분산을 계산하여 상기 사진의 흐릿함을 판단하고,
상기 유사 사진 감지 단계는 상기 객체 인식 단계에 의해 식별한 객체에 따른 사진의 주제와 시간, 위치 정보를 이용하여 상기 사진들에서 유사 사진을 검색하고,
상기 스크린 샷 검색 단계는 상기 사진을 저장할 때 함께 저장하는 사진 메타 정보 테이블에 포함된 스크린 샷 여부를 이용하여 사진들 중에 스크린 샷을 검색하는,
상기 어두운 사진 감지 단계는, 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층(pooling layer) 및 완전 연결 계층(fully connected layers)으로 구성된 딥 러닝 모델을 활용하여 상기 사진이 어두운지 여부를 결정하되,
상기 딥 러닝 모델은, 학습 데이터로 학습할 때, 각 계층에 있는 노드를 특정 확률로 제거하여 학습시키고, 학습이 완료되고 테스트를 할 때에는 원래대로 모든 노드를 고려하고 노드마다 가지고 있는 가중치를 상기 확률을 곱한 드롭 아웃 기술을 적용한 사진 관리 방법.saving photos;
Analyzing the images included in the stored photos to determine whether they are unnecessary photos, and recommending deletion of the photos if they are unnecessary photos; and
A step of listing the photos recommended for deletion and outputting a display for selecting whether to delete the photos,
The unnecessary photo is at least one of a shaken photo, a dark photo, a similar photo, and a screenshot,
If the photo is an unnecessary photo, the step of recommending deletion of the photo includes a photo object recognition step of identifying an object in the photo, a shaken photo detection step of determining whether the photo is shaken, and a dark photo detection step of determining whether the photo is dark. It includes at least one of a photo detection step, a similar photo detection step of searching for similar photos in the photos, and a screenshot search step of searching for screenshots in the photos,
The photographic object recognition step divides the image included in the photograph into several grids, each grid predicts a certain number of bounding boxes to identify the location of the object, and a confidence score is assigned to each bounding box, Identify objects in the photo using each predicted bounding box and confidence score,
The shaken photo detection step determines whether the photo is shaken by determining the blurriness of the photo using a method using a Gaussian basis filter, a method of measuring the degree of blur at edges, an edge sharpness analysis method, and Laplacian variance, and determining whether the photo is shaken. When the detection step determines the blurriness of the photo using Laplacian variance, convert the photo to black and white and calculate the Laplacian variance to determine the blurriness of the photo,
The similar photo detection step searches for similar photos in the photos using the subject, time, and location information of the photo according to the object identified by the object recognition step,
The screenshot search step is to search for a screenshot among photos using whether or not the screenshot is included in a photo meta information table that is stored together when saving the photo.
The dark photo detection step determines whether the photo is dark using a deep learning model consisting of multiple convolution layers, a pooling layer, and a fully connected layer,
When learning with training data, the deep learning model trains the nodes in each layer by removing them with a certain probability, and when learning is completed and testing, it considers all nodes as they were and sets the weight each node has to the probability. Photo management method using multiplied dropout technology.
상기 사진 객체 인식 단계는 다중 컨벌루션 계층(multiple convolution layers), 풀링 계층(pooling layer) 및 완전 연결 계층(fully connected layers)으로 구성된 딥 러닝 모델을 활용하여 상기 사진에서 객체를 식별하는 사진 관리 방법.
According to clause 10,
The photo object recognition step is photo management that identifies objects in the photo using a deep learning model consisting of multiple convolution layers, a pooling layer, and a fully connected layer. method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210064353A KR102596157B1 (en) | 2021-05-18 | 2021-05-18 | Photo management device and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210064353A KR102596157B1 (en) | 2021-05-18 | 2021-05-18 | Photo management device and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220156376A KR20220156376A (en) | 2022-11-25 |
KR102596157B1 true KR102596157B1 (en) | 2023-10-31 |
Family
ID=84237167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210064353A KR102596157B1 (en) | 2021-05-18 | 2021-05-18 | Photo management device and method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102596157B1 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101060488B1 (en) * | 2008-04-21 | 2011-08-30 | 주식회사 코아로직 | Optimal Image Selection Method and Device |
KR102115286B1 (en) * | 2013-01-04 | 2020-06-08 | 삼성전자주식회사 | Server, terminal, system and method for searching images |
KR102390034B1 (en) * | 2015-10-23 | 2022-04-25 | 엘지전자 주식회사 | Mobile terminal and method for controlling the same |
KR102197946B1 (en) * | 2018-11-30 | 2021-01-04 | (주)케이아이오티 | object recognition and counting method using deep learning artificial intelligence technology |
-
2021
- 2021-05-18 KR KR1020210064353A patent/KR102596157B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20220156376A (en) | 2022-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220092351A1 (en) | Image classification method, neural network training method, and apparatus | |
US10459975B1 (en) | Method and system for creating an automatic video summary | |
CN109598231B (en) | Video watermark identification method, device, equipment and storage medium | |
US7657089B2 (en) | Automatic classification of photographs and graphics | |
JP2017062781A (en) | Similarity-based detection of prominent objects using deep cnn pooling layers as features | |
WO2022121485A1 (en) | Image multi-tag classification method and apparatus, computer device, and storage medium | |
CN107209860A (en) | Optimize multiclass image classification using blocking characteristic | |
US20140293069A1 (en) | Real-time image classification and automated image content curation | |
WO2020159890A1 (en) | Method for few-shot unsupervised image-to-image translation | |
Zhang et al. | Research on mine vehicle tracking and detection technology based on YOLOv5 | |
Zhang et al. | Probabilistic skimlets fusion for summarizing multiple consumer landmark videos | |
Buttar et al. | Toward trustworthy human suspicious activity detection from surveillance videos using deep learning | |
CN113609337A (en) | Pre-training method, device, equipment and medium of graph neural network | |
Chandra et al. | RIPA: Real-time image privacy alert system | |
KR102596157B1 (en) | Photo management device and method thereof | |
CN109963072A (en) | Focusing method, device, storage medium and electronic equipment | |
US11816181B2 (en) | Blur classification and blur map estimation | |
Das | Content-based image classification: efficient machine learning using robust feature extraction techniques | |
Mitrea et al. | Multiple instance-based object retrieval in video surveillance: Dataset and evaluation | |
Tran et al. | Building an automatic image tagger with DenseNet and transfer learning | |
Xie et al. | Markov random field based fusion for supervised and semi-supervised multi-modal image classification | |
Kim et al. | Photo Management Cloud Service Using Deep Learning | |
Aramuthakannan et al. | Movie recommendation system via fuzzy decision making based dual deep neural networks | |
CN111414966A (en) | Classification method, classification device, electronic equipment and computer storage medium | |
Bhavana et al. | Multimedia Content Mining Based on Web Categorization (MCMWC) Using AlexNet and Ensemble Net |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |