전체 글

좋은사람의 개발 노트 입니다.
빅데이터 & 분석/Machine Learning

파이썬(Python) - 머신러닝 프로젝트(2) - OCR 이미지 문자열 추출(파이썬)

파이썬 Tesseract - 프로젝트 설명OCR 추출 부터 이어지는 머신러닝을 활용한 프로젝트 두번 째 포스팅 입니다.제가 진행하는 프로젝트는 SMS로 수신되는 다양한 이미지 스팸(SPAM) 광고 문자(이미지)를 분석해서 텍스트를 분석 -> 출력 후 -> 데이터 정제 -> 기계학습 -> 데이터 확인(스팸 종류 및 여부) 확인 순서로 진행할 예정입니다. 오늘 정리 예정인 내용은 지난 시간에 이어서 Tesseract 사용 부분을 파이썬 코드로 변환해서 앞으로 연동 예정인 Pandas, Numpy 등에 대비할 예정입니다. 5회 정도의 포스팅으로 연재를 이어나갈 예정이며, 하단의 예제를 쉽게 따라하실 수 있게 정리하겠습니다.이전 포스팅을 차근차근 읽어보시면 더욱 도움이 되실걸로 생각이 됩니다. - 관련 포스팅 ..

언어/Python

파이썬(Python) - 정규표현식(Regex) 특수문자 제거 설명 및 예제 소스 코드

Python - 정규표현식(Regular Expressions) 기본 설명 ① 정규표현식은 복잡한 문자열을 가공 및 처리할 경우 유용하게 사용할 수 있는 기법입니다.② 파이썬 정규표현식은 강력한 기능을 제공하고 있으며, search, match, findall, sub 명령어 등으로 쉽게 사용할 수 있습니다.③ 정규표현식은 책 한 권으로 분리 될 정도로 적지 않은 내용을 수반하지만, 실제 프로젝트를 수행 하시면서 필요한 경우 틈틈히 관련 이론을 공부하시는 것을 추천드립니다. ④ 오늘은 자주 사용하는 패턴인 특정 문자열 중에서 특수문자를 제거하는 예제를 간단하게 다뤄보겠습니다. Python - 정규표현식 예제 소스 코드(문자열 내 특수문제 제거) 원본코드1234567891011121314import re ..

빅데이터 & 분석/Machine Learning

파이썬(Python) - 머신러닝 프로젝트(1) - OCR 이미지 문자열 추출(Tesseract)

파이썬 Tesseract - OCR 활용 설명실무에서 머신러닝을 활용한 프로젝트를 진행하게 되었습니다. 우선 이미지에서 한글 및 영문을 텍스트를출력 후 -> 데이터 정제 -> 기계학습 -> 데이터 확인 순으로 평범하게 진행할 예정입니다. 그에 맞게 관련된 내용을 블로그에 정리하려고 합니다. 오늘은 첫 번째 시간으로 오픈소스 OCR 제품인Tesseract를 활용해서 이미지에서 텍스트를 추출하는 내용을 포스팅 합니다. 5회 정도의 포스팅으로 연재를 이어나갈 예정이며, 하단의 예제를 쉽게 따라하실 수 있게 정리하겠습니다. Tessaract - 다운로드 및 설치우선 Tessaract 를 자신의 운영체제에 맞는 버전으로 다운로드 합니다. - Tessaract 다운로드본 설정은 Windows10 (x64)에서 설정..

언어/Go

Go(Golang) - ioutil 활용 파일 읽기(Read), 쓰기(Write) 예제 및 소스파일

Go(Golang) - 파일(File) Read/Write 오늘은 Golang의 표준 지원 패키지인 io/ioutil 패키지의 파일 쓰기/읽기 관련 지원 기능에 대해서 간단하게 예제를 작성해보면서 설명드리겠습니다. 가능하면 소스코드를 다운로드 받으셔서 IDE에서 반드시 실행해보시길 권장드립니다. Go 관련 포스팅 : Golang 관련 Go(Golang) - 파일 읽기/쓰기 예제 소스 코드(ioutil) Golang - io/ioutil 패키지의 파일 처리 관련 메소드를 통해서 파일 쓰기/읽기 및 버퍼 관련 처리를 보다 쉽게 사용하실 수 있습니다. 아래 예제를 통해서 파일 처리의 기본 흐름을 익히실 수 있습니다. go_io_ex1.go1234567891011121314151617181920212223242..

언어/Go

Go(Golang) - 웹 서버(Web Server) Logging 구현(Http) 예제 및 소스파일

Go(Golang) - Logging Handler 설명 오늘은 Golang의 표준 지원 패키지인 net/http의 웹 관련 지원 기능(Server & Client) 중 하나인 HandleFunc을 사용해서 커스텀 미들웨어를 작성해서 Logging Hanlder를 구현하는 예제를 해보겠습니다. Go언어에서는 강력한 웹 관련 지원 패키지를 통해서 누구나 손쉽게 웹 서버 구축 및 어플리케이션 제작을 할 수 있도록 손 쉬운 설명의 레퍼런스 및 기능을 지원하고 있습니다. 가능하면 소스코드를 다운로드 받으셔서 IDE에서 반드시 실행해보시길 권장드립니다. Go 관련 포스팅 : Golang 관련 Go(Golang) - net/http 기본 흐름 구조보통 Golang net/http 패키지 실행 흐름 구조는 아래와 같..

언어/Go

Go(Golang) - 웹 서버(Web Server) 기초 구현(Http) 예제 및 소스파일

Go(Golang) - Http 서버 내용 설명 오늘은 Golang의 표준 지원 패키지인 net/http의 웹 관련 지원 기능(Server & Client)에 대해서 간단하게 예제를 작성해보면서 설명드리겠습니다. Go언어에서는 강력한 웹 관련 지원 패키지를 통해서 누구나 손쉽게 웹 서버 구축 및 어플리케이션 제작을 할 수 있도록 손 쉬운 설명의 레퍼런스 및 기능을 지원하고 있습니다. 특히, ListenAndServer, HandleFunc, Handle 등의 메소드의 기능을 정확하게 이해 및 숙지해야 Golang의 Http 패키지의 기능을 사용할 수 있습니다. 간단한 예제를 통해서 Request(요청) 및 Response(응답)에 대한 기능을 살펴보겠습니다. 가능하면 소스코드를 다운로드 받으셔서 IDE에..

웹 백엔드/Django & Flask

Flask(플라스크) - 파이썬 Flask 기본 템플릿(template) 예제 및 소스파일

파이썬(Python) Flask - Templates 오늘은 Flask 에서 템플릿(Template) 파일 렌더링 및 데이터 전달에 대해서 알아보겠습니다. 설치 시에 대부분의 기능을 지원하는 중량 프레임워크인 Django에 비해서 Flask는 아무것도 없는 초기 기본 레이아웃 형태로 설치가 지원되고 있습니다. Flask는 매우 가볍고 심플하고 경량화를 추구하는 철학때문에 필요한 패키지들을 별도로 사용자가 설치하거나 직접 개발해서 사용해야 합니다. 쉽게 이야기 하면 많은 곳에서 활용하고 있는 자유도가 대단히 높은 프레임워크라고 볼 수 있습니다. 웹 어플리케이션 제작에 있어서 데이터를 가공한 후 사용자에게 View 화면을 제공하는 Templates 기능은 반드시 학습해야 될 내용이라 볼 수 있습니다. 그러면..

웹 백엔드/Django & Flask

Flask(플라스크) - 파이썬 Flask 파일 업로드(file upload) 예제 및 소스파일

파이썬(Python) Flask - File upload 오늘은 파이썬 Django(장고)와 더불어 대표적인 웹 프레임워크인 Flask 에서 가장 빈번하게 질문이 올라오는 파일 업로드 사용법에 대해서 알아보겠습니다. 설치 시에 대부분의 기능을 지원하는 중량 프레임워크인 Django에 비해서 Flask는 아무것도 없는 초기 기본 레이아웃 형태로 설치가 지원되고 있습니다. Flask는 매우 가볍고 심플하고 경량화를 추구하는 철학때문에 필요한 패키지들을 별도로 사용자가 설치하거나 직접 개발해서 사용해야 합니다. 쉽게 이야기 하면 많은 곳에서 활용하고 있는 자유도가 대단히 높은 프레임워크라고 볼 수 있습니다. 그러면 문서 하단에서 간단하게 예제를 작성해보겠습니다. Flask 관련 포스팅 : Flask 관련 파이..

언어/PHP

PHP - JSON 데이터 사용 방법 및 Decode, Encode 설명

PHP - JSON 데이터 사용 기본 설명 ① PHP 5.2 버전 이상부터는 JSON Parser를 기본 내장하고 있다. 그만큼 Rest Api 의 표준 형식이기 때문이다. - json_decode : JSON 오브젝트 -> PHP Array 또는 Object 변환 - json_encode : PHP Array 또는 Object -> JSON 오브젝트 변환② PHP JSON 관련 Encode 작업 중에는 한글 깨짐에 주의 해야 해요. (주로 JSON_UNESCAPED_UNICODE)로 해결③ 문서 하단에 간단한 예제를 통해서 JSON 데이터 관련 작업에 도움이 되기를 바랍니다. PHP - JSON Encode, Decode 예제 전체 소스코드12345678910111213141516171819202122..

언어/C#

C#- 스택(Stack) 클래스 기본 구현 사용 및 예제

C# - 예제 간단 설명 ① 스택(Stack) 의 자료구조는 개발자에게 상당히 중요한 개념입니다.② 스택은 Push, Pop, Peek 명령어 등으로 사용할 수 있으며, 배열 및 연결리스트 등으로 구현 가능합니다.③ C#에서는 Non-Generic 스택 클래스 및 Generic 스택 클래스 두 가지 방법 모두 지원하고 있습니다. - 하단에서 간단한 예제 파일을 확인하실 수 있습니다. - 스택 디폴트 생성자 사용시에는 100개까지 저장하실 수 있습니다. C# - 예제 소스 원본코드12345678910111213141516171819202122232425262728using System;using System.Collections.Generic; class StackTest{ static Stack GetS..

언어/Python

파이썬(Python) - multiprocessing(멀티프로세싱) 설명 및 예제(2) - Process

파이썬(Python) Multiprocessing - Process 오늘은 파이썬 멀티프로세싱을 활용하는 두 번째 예제를 설명하겠습니다. 멀티 프로세싱을 활용하면 복잡하고 시간이 걸리는 작업을 별도의 프로세스를 생성 후 병렬처리해서 보다 빠른 응답처리 속도를 기대할 수 있는 장점이 있습니다. 최근들어 대용량의 빅데이터의 분석 및 예측 등의 머신러닝을 지원하는 다양한 패키지에서 대부분 멀티 프로세싱을 활용해서 멀티코어의 CPU의 장점을 극대화하고 빠른 처리를 지원하고 있습니다. 다만, 충분한 사전 지식 및 병렬 프로그래밍의 이해 없이 코드를 작성한다면, 싱글 프로세스의 응답속도보다 시간이 지연되고 별도로 예상치 못한 결과가 나타날 수 있으니 프로세스 및 쓰레드 등의 지식이 중요합니다. 또한, 멀티프로세싱은..

라이프/취미

[취미] PS4 Pro(프로) - 수직(세로) 멀티 스탠드(거치대) 사용 후기

PS4 Pro(프로) - 화이트 멀티 스탠드(거치대) 리뷰 ① PS4 Pro로 변경 후 화이트 스탠드를 구매하려고 했으나, 국내에서는 파는 곳이 거의 없었습니다.② 사이트 검색결과 직구하기로 결정을 하고 일주일 사용 후 아래와 같은 후기를 남겨봅니다.③ 전반적으로 만족하고 품질이나, 디자인 마감 등은 좋은 편입니다. 화이트 스탠드 발견! -> 2개의 쿨러가 장착되어 있습니다. 듀얼쇼크도 2개까지 충전가능 당연히 블랙 스탠드도 있습니다. 구매 후 실제 사용 사진! 듀얼쇼크 유선 케이블과 색상이 어울리네요. PS4 - 화이트 멀티 스탠드 후기 - 화이트 스탠드로써 디자인 효과 상승- 듀얼쇼크 2개 충전 기능 외 넉넉한 USB 포트 제공 - 2개의 LED를 통해서 스탠드의 상태(충전, 작동)를 확인가능 - 큰..

언어/Python

파이썬(Python) - multiprocessing(멀티프로세싱) 설명 및 예제(1) - Pool

파이썬(Python) Multiprocessing - Pool 오늘은 파이썬 멀티프로세싱을 활용하는 첫 번째 예제를 설명하겠습니다. 멀티 프로세싱을 활용하면 복잡하고 시간이 걸리는 작업을 별도의 프로세스를 생성 후 병렬처리해서 보다 빠른 응답처리 속도를 기대할 수 있는 장점이 있습니다. 최근들어 대용량의 빅데이터의 분석 및 예측 등의 머신러닝을 지원하는 다양한 패키지에서 대부분 멀티 프로세싱을 활용해서 멀티코어의 CPU의 장점을 극대화하고 빠른 처리를 지원하고 있습니다. 다만, 충분한 사전 지식 및 병렬 프로그래밍의 이해 없이 코드를 작성한다면, 싱글 프로세스의 응답속도보다 시간이 지연되고 별도로 예상치 못한 결과가 나타날 수 있으니 프로세스 및 쓰레드 등의 지식이 중요합니다. 또한, 멀티프로세싱은 오버..

언어/Python

파이썬(Python) - Thread(쓰레드) 설명 및 예제 소스 코드(4) - 일정 주기 반복 실행

파이썬(Python) Thread - 지정 시간 반복 실행 지난 시간에 이어서 오늘은 파이썬 쓰레드를 활용해서 반복적으로 실행하는 방법을 설명하겠습니다. 쓰레드를 활용해서 지정된 시간 간격으로 주기적으로 특정 작업 등을 실행해야할 코드를 구현할 때 Thread.Timer를 활용하면 쉽게 구현하실 수 있습니다. 주로 주기적으로 웹 데이터 크롤링, 주식 자동 트레이딩(봇), DB 통계 작업 등 에서 사용하며, 활용 가능성은 매우 다양하다고 생각합니다. 그러면 문서 하단에서 간단하게 예제를 작성해보겠습니다. Python 관련 포스팅 : Python 관련 파이썬(Python) Thread - 구조 보통 Thread는 아래와 아키텍처로 나타낼 수 있으며, 관련 예제는 하단에서 설명합니다. Thread 구조 - 출..

언어/Java

Java(자바) 디자인패턴 - 팩토리(Factory Method) 패턴 설명 및 예제소스

Java 디자인패턴 - 팩토리 메소드 패턴 이번 시간에는 자바 디자인 패턴 중 팩토리 메소드 패턴(Factory Method Pattern)에 대해서 쉬운 예제와 함께 설명 드리려 합니다. 팩토리 메소드 패턴은 요약해서 말씀드리면 객체 생성을 대신 수행해주는 공장이라고 생각하시면 이해가 빠르실 겁니다. 객체는 직접 생성하는 경우가 있고 팩토리 메소드 패턴의 역할처럼 간적접으로 객체 생성 후 반환해주는 방식으로 생각해 볼 수 있습니다. 해당 패턴은 아래와 같은 장단점이 존재합니다. - 생성 할 클래스를 미리 알지 못해도 팩토리 클래스가 객체 생성 담당 - 객체의 자료형이 하위클래스에 의해서 결정 -> 확장 용이성 - 동일한 형태로 프로그래밍 가능 - 확장성 있는 전체 프로젝트 구성 가능 - 객체가 늘어날 ..

[좋은사람]
좋은사람의 개발 노트