Programming/Python
[2020 kakao blind_Python3] 1번 문자열 압축 문제설명 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 aabbaccc의 경우 2a2ba3c(문자가 반복되지 않아 한번만 나타난 경우 1은 생략함)와 같이 표현할 수 있는데, 이러한 방식은 반복되는 문자가 적은 경우 압축률이 낮다는 단점이 있습니다. 예를 들면, abcabcdede와 같은 문자열은 전혀 압축되지 않습니다. 어피치는 이러한 단점을..
OpenCV-python python에서 OpenCV를 사용하는 방법을 알아보자! pip install opencv-python 위의 명령어를 통해서 opencv를 install할 수 있다. 그 후 코드에서 사용하려면 import cv2 를 써주면 된다. 아래는 OpenCV의 사용 예이다. import cv2 img = cv2.imread('파일경로', cv2.IMREAD_GRAYSCALE) # '파일경로'의 이미지를 grayscale로 읽어온다. cv2.imshow('image', img) # 'image'라는 타이틀을 가지고 윈도우에 img를 띄워준다. cv2.waitkey(0) # 0값을 넣어주면 key입력이 있을때까지 무한대기. cv2.de..
OpenCV 이미지 전처리 - 히스토그램(Histogram) OCR(광학 문자 인식)을 사용하려고한다면 사진이 문자를 읽기 쉽게 만들어주어야한다. 그 방법 중 하나는 opencv라는 오픈소스를 활용하는 방법이다. 이번 글에서는 OpenCV를 사용해서 이미지를 전처리하는 여러가지 함수들에 대해 알아보려고 한다. 히스토그램 균등화(평활화) 히스토그램(histogram) 이란? 히스토그램은 본래 도수분포표로 x 축이 종류라면 y축이 그 종류의 개수를 나타내는 그래프를 나타낸다. 그런데 영상처리에서 히스토그램은 x축에는 0 255값, y축에는 영상에 있는 각 픽셀이 0 255사이의 값의 개수를 나타내게 된다. 일반적으로는 이미지의 밝기값 히스토그램을 사용하여 이미지의 콘트라스트를 조절하게 된다. 위의 사진을 보..
정규표현식 정규표현식(regular expression) 이란? 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어 정규표현식은 특정 문자의 형식을 치환하거나 찾아내는데 사용할 수 있다. ex) r'^\d{3}-\d{3,4}-\d{4}' => 핸드폰 번호 정규식 메타 문자 원래의 문자 뜻이 아닌 특별하 용도로 사용하는 문자로 . ^ $ * + ? {} [] \ | () 이러한 것들이 있다. ' . ' : 개행문자 '\n'을 제외한 모든 문자와 매치된다. ex) a.b => a + 모든문자(개행문자 제외) + b 'aab', 'a.b', 'abb'... ' ^ ' : 문자열의 시작을 나타낸..