목록
'python' 82건
-
문자 인식 프로그램(2)문자 인식 코드를 함수 read_text()로 만들아봅시다. 이 함수는 이미지 경로를 입력 받아서, 해당 이미지의 문자 인식 처리 결과를 반환하는 함수입니다. 비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_2_2.py'로 지정하세요. 다음과 같이 코드를 코드를 입력한 뒤 대화형 창에서 실행하세요. 앞서 'step_2_1.py'에 실습한 것과 동일한 결과가 화면에 출력됩니다. 문자 인식 함수from pathlib import Pathimport easyocrfrom step_1 import IN_DiR # 이전에 작성한 모듈을 불러옵니다. def read_text(path: Path) -> list: reader = easyocr.Reader(["ko", "en"], ve..
-
문자 인식 프로그램 만들기(1)OCR(Optical Character Recognition)은 해석하면 '광학 문자 인식'으로, 이미지에서 문자를 인식하여 추출하는 기술입니다. 이번 절에서는 easyocr 패키지를 사용해서 파이썬 코드로 OCR 기술을 구현해 볼 것입니다. easyocr은 네이버 클로바의 딥러닝 기술을 바탕으로 만든 파이썬 패키지입니다. 이 패키지는 영어를 비롯해 전 세계 80개 이상의 언어를 인식할 수 있습니다. easyocr은 두 단계를 거쳐 문자를 인식합니다. 1. 텍스트 감지: 이미지에서 텍스트가 있는 영역을 감지합니다.2. 문자 인식: 개별 문자를 인식하고 문자열로 변환합니다. 문자 인식 프로그램 만들기머신러닝과 딥러닝 등 인공지능 기술의 발달로 OCR 연구가 활발히 이뤄지고 있습니다. 딥러닝 기을을 바탕으로..
-
웹의 작동 원리 이해하기사용자의 눈에는 보이지 않지만, 웹 브라우저에 페이지를 불러오려면 웹 서버에서 제공하는 데이터인 리소스가 필요합니다. 사용자가 URL을 입력하면 웹 브라우저가 웹 서버에 리소스를 요청하는데, 이때 특정 규칙에 따라 요청 메시지를 작성해야 하며, 이 규칙을 HTTP라고 합니다. 01 웹 브라우저는 서버에 HTTP 요청 메시지를 전달합니다. 02 웹 서버는 브라우저가 보낸 HTTP 요청 메시지를 분석합니다. 요청 메시지가 HTTP 규칙에 따라 잘 작성되었는지, 정당한 요청 권한이 있는지, 요청한 리소스가 웹 서버에 존재하는지 등을 확인하고, 그 결과에 따라 적절한 응답 메시지를 웹 브라우저에 전달합니다. 이렇게 서버가 작성한 응답 메시지를 HTTP 응답 메시지라고 합니다. 03 웹 브라우저는 HTTP 응답 ..
-
웹의 작동 원리 - 실습 환경 준비하기구글의 크롬(Chrome), 마이크로소프트의 엣지(Edge), 애플의 사파리(Safri) 등 웹 브라우저(Web browser)는 인터넷 웹사이트에편리하게 접속하기 위한 프로그램입니다.대부분 웹 브라우저에는 웹 사이트의 개발 및 디버깅을 돕기 위해 개발자 도구(develop tool)라는 강력한 도구 모음이 내장되어 있습니다. 브라우저와 서버의 양방향 통신 기록을 열람할 수 있으며, 개발자 도구의 검사 모드를 사용하면 웹 문서의 HTML 요소를 분석할 수도 있습니다. 실습 환경 준비하기이번 절의 실습에 필요한 가상환경을 구축하고 외부 패키지를 터미널에서 설치합니다. 가상환경 초기화easyocr 패키지는 PyTorch를 바탕으로 제작되었고, 2024년 12월을 기준으로 PyTorch는 파이썬 3.12.x ..
-
QR 코드에 이미지 삽입하기: pillow 패키지 활용이번에는 pillow 패키지를 사용하여 QR 코드에 이미지를 삽입해 보겠습니다. pillow 패키지를 사용하여 이미지를 삽입하는 방법은 qrcode 패키지를 사용하는 것보다 복잡하지만, 삽입할 이미지의 크기나 위치 등을 자유롭게 지정할 수 있다는 장점이 있습니다.여기서는 QR 코드의 오른쪽 아래 모서리에 전화 아이콘을 삽입하겠습니다. 아이콘을 자연스럽게 처리하려면 QR 코드의 내부에 적당한 여백을 두는 것이 좋겠죠? pillow 패키지는 이미지를 삽입할 위치를 (x, y) 좌표로 전달하며 QR 코드, 삽입할 아이콘, 여백의 크기를 고려해서 좌표를 설정해야 합니다. 비주얼 스튜디오 코드에서 새로운 파일에서 새로운 파일을 만들고, 파일명을 'step_3_2.py'로 지정하세요. 다음 코드를 입력한 뒤, 대..
-
QR 코드에 이미지 삽입하기시각화 패키지 pillow를 사용하여 QR 코드에 이미지를 삽입하는 방법을 학습합니다. QR 코드에 이미지를 삽입하면 시각적으로 더 매력적으로, 브랜드 로고나 픽토그램 등 중요한 이미지를 함께 공유할 수 있어 직관적이면서도 보기 좋은 모습으로 만들 수 있습니다. QR 코드에 이미지 삽입하기: qrcode 패키지 활용qrcode 패키지의 QRCode 클래스는 QR 코드의 스타일을 지정하는 다양한 명령어를 제공합니다. 여기서는 함수 make_image()를 사용해 QR 코드에 전화 아이콘을 삽입하고, 이를 통해 QR 코드가 연락처를 저장하고 있음을 표현해 보겠습니다. 전화 아이콘은 'input' 폴더에 'phone.png'를 사용합니다.qrcode 패키지를 사용해 이미지를 삽입하려면 QRCode 클래스와 더..
-
vobject 패키지스마트폰의 연락처에는 이름과 전화번호 외에도 직작이나 직책, 또는 홈페이지나 SNS 주소 등 다양한 정보를 저장할 수 있습니다.파이썬의 vobject 패키지는 xCard 파일을 관리하는 데 필요한 명령어를 제공하여, VCE를 마치 레고 블록처럼 조립할 수 있게 도와줍니다. VCF를 vobject 패키지를 사용해서 생성해 봅시다.이 패키지를 사용하려면 비주얼 스튜디오 코드에서 터미널을 열고 다음 명령어를 입력하여 설치합니다.$ pip install -U vobject vobject에 대한 더 자세한 정보는 공식 문서에서 찾을 수 있습니다. 실습을 통해 vobject 패키지의 명령어를 살펴보고 연락처에 여러 가지 데이터를 입력해 봅시다. * vobject 공식 문서의 URL은 https://py-vobjec..
-
연락처를 QR 코드로 만들기VCF는 전자 명함의 세계 표준으로, 다양한 기기와 소프트웨어에서 연락처 정보를 일정한 형식으로 저장하고 교환할 수 있는 파일 형식입니다. 주로 이메일 프로그램과 연락처 관리 앱에서 사용하며, 일반 텍스트 파일과 같기 때문에 별도의 처리 없이 데이터를 공유할 수 있습니다.VCF는 데이터를 속성 : 값 쌍으로 저장합니다. 파이썬의 딕셔너리와 비슷하지만, VCF는 중괄호 { }가 없고, 각 데이터 쌍을 개행 문자(\n)로 구분합니다. 연락처 정보를 VCF로 저정하기스마트폰의 연락처에 저장할 데이터를 작성하고 VCF로 저장합니다. 이름은 반드시 필요하며, VCF 형식에 맞게 속성과 값을 쌍으로 만들어야 합니다.코드로 실습합니다. 비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_2_1.py'..
-
QR 코드 만들기QR 코드는 어떤 문자열을 특정 규칙에 따라 이미지로 변환하는 것입니다. QR 코드를 해석할 수 있는 기기, 즉 QR 코드 스캐너를 이용해 해당 이미지에 담긴 문자열을 읽을 수 있습니다. 문자열 QR 코드qrcode 패키지를 불러오고, 함수 qrcode.make()를 사용해서 문자열을 작성한 QR 코드를 생성해 볼 것입니다. 비주얼 스튜디오 코드에서 새로운 'step_1_2.py' 파일을 생성하고, 아래 코드를 입력한 뒤, 대화형 창에서 실행하세요. 대화형 창에 QR 코드가 출력됩니다.import qrcodeimg = qrcode.make("헬로, QR 코드!")img [실행결과] 출력한 QR 코드를 스미트폰의 QR 코드 스캐너로 스캔합니다. "헬로, QR 코드!" 문자열이 출력됩니다. 스마트폰의 운영..
-
QR 코드 기초 다지기QR 코드는 다양한 정보를 간편하게 공유할 수 있는 강력한 도구입니다.qrcode 패키지를 장착하고, 원하는 정보를 간단히 전달할 수 있도록 QR 코드를 생성하는 기본적인 방법을 배웁니다. 파이썬 패키지로 준비하기본격적으로 실습을 시작하기 전에 필요한 패키지에 대해 간략히 소개하고, 개발 환경에 설치해 봅시다. pathlib 패키지pathlib 패키지를 사용하여 실습에 필요한 폴더를 생성해 봅시다. 현재 작업 폴더를 'ch_04'로 지정하고 하위 경로에 'input', 'output' 폴더를 생성하겠습니다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_1_1.py'로 지정합니다. 다음과 같이 코드를 작성한 뒤, 대화형 창에서 실행합니다. 현재 작업 폴더의 하위 폴더로 'input',..
-
이미지 콜라주에 메시지 남기기비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_3.py'로 변경하세요. 다음과 같이 코드를 입력한 후, 대화형 창에서 실행하면 왼쪽 상단에 변수 test에 저장된 문자열이 출력됩니다. ch03/step_3_3.pyfrom pathlib import Pathfrom PIL import Image, ImageDraw, ImageFontfrom step_1_1 import IN_DIR, OUT_DIR # 이전에 작성한 모듈을 불러옵니다.from step_3_2 import OUT_3_2img_raw = Image.open(OUT_3_2) # 06text = "2023년의 발리, 그 황홀했던 순간들" # 이미지에 추가할 메시지font = ImageFont.truetype(IN_DIR /..
-
이미지 배열하기콜라주는 여러 개의 이미지를 하나의 이미지로 조화롭게 배치하는 기법입니다. 아름다운 콜라주를 만들기 위해서는 이미지의 크기, 위치 등을 세심하게 고려해야 합니다. 하나의 큰 배경 이미지를 생성하고, 그 위에 개뱔 이미지를 불러와 알맞은 위치에 삽입하면 됩니다.완성된 이미지 콜라주에 텍스트 메시지를 추가하는 방법도 다릅니다 이미지 가로 배치이제부터 6개의 이미지를 가로로 나란히 배치해 보겠습니다. 먼저, 개발 이미지의 개수와 크기를 고려하여 배경 이미지를 만듭니다. 이어서 삽입될 모든 이미지의 크기를 가로세로 500px로 조정한 후, 이를 배경 이미지 위에 붙이면 됩니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고 파일명을 'step_3_1.py'로 변경하세요. 다음 코드를 입력한 뒤, 대화형 창에서 ..