โ† ๋ฉ”์ธ์œผ๋กœ ๋Œ์•„๊ฐ€๊ธฐ

๐Ÿ›ก๏ธ ๋ฐฐํฌ ์ปจํ…์ธ  ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ

์ด๋ฏธ์ง€ ์† ๊ฐœ์ธ์ •๋ณด๋ฅผ ์ž๋™์œผ๋กœ ์ฐพ์•„ ๊ฐ€๋ฆฌ๋Š” ๊ธฐ์ˆ 

1. ๋ฌธ์ œ ์ •์˜

๋ฌธ์ œ ์ •์˜: ํ•™์Šต ์ž๋ฃŒ์— ํฌํ•จ๋œ ๊ฐœ์ธ์ •๋ณด(์ด๋ฉ”์ผ ์ฃผ์†Œ) ๋…ธ์ถœ ์œ„ํ—˜์„ฑ๊ณผ ํ•ด๊ฒฐ ํ•„์š”์„ฑ

๐ŸŽฏ ์ฒ˜๋ฆฌ ๋Œ€์ƒ

ํŒŒ์ผ: amazon-q-cli-install.html์— ์ฒจ๋ถ€๋œ ์ด๋ฏธ์ง€ 2๊ฐœ
์œ„์น˜: /02_web/assets/images/q-cli-install/
๊ฐœ์ธ์ •๋ณด: ์ด๋ฉ”์ผ ์ฃผ์†Œ (๊ฐœ์ธ ์‹๋ณ„ ์ •๋ณด)
์ฒ˜๋ฆฌ ์ผ์‹œ: 2025๋…„ 9์›” 26์ผ 09:00-09:05

โš–๏ธ ๋ฒ•์  ์š”๊ตฌ์‚ฌํ•ญ

2. OCR ๊ธฐ์ˆ 

OCR ๊ธฐ์ˆ : Tesseract 5.5.1 ๊ธฐ๋ฐ˜ ์ด๋ฉ”์ผ ์ฃผ์†Œ ์ž๋™ ํƒ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๐Ÿ”ง ๊ธฐ์ˆ  ์Šคํƒ

import pytesseract
from PIL import Image, ImageFilter
import re

# ์ด๋ฉ”์ผ ํŒจํ„ด์œผ๋กœ ์ •ํ™•ํ•œ ์œ„์น˜ ํƒ์ง€
email_pattern = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
data = pytesseract.image_to_data(img, output_type=pytesseract.Output.DICT)

๐Ÿ“Š OCR ์ฒ˜๋ฆฌ ๊ฒฐ๊ณผ

โœ… builder-id-login.png
- ์ด๋ฏธ์ง€ ํฌ๊ธฐ: 854 ร— 1148 ํ”ฝ์…€
- ๋ฐœ๊ฒฌ๋œ ์œ„์น˜: (120, 728, 427, 761)
- ์ฒ˜๋ฆฌ ์˜์—ญ: (110, 718, 437, 771) - 10px ์—ฌ๋ฐฑ ํฌํ•จ

โœ… email-verification.png
- ์ด๋ฏธ์ง€ ํฌ๊ธฐ: 796 ร— 1050 ํ”ฝ์…€
- ๋ฐœ๊ฒฌ๋œ ์œ„์น˜: (65, 362, 437, 390)
- ์ฒ˜๋ฆฌ ์˜์—ญ: (55, 352, 447, 400) - 10px ์—ฌ๋ฐฑ ํฌํ•จ

3. ๋ธ”๋Ÿฌ ์ฒ˜๋ฆฌ

๋ธ”๋Ÿฌ ์ฒ˜๋ฆฌ: ๊ฐ€์šฐ์‹œ์•ˆ ๋ธ”๋Ÿฌ ๋ฐ˜๊ฒฝ 15px๋กœ ์ •ํ™•ํ•œ ์Œ์˜ ์ฒ˜๋ฆฌ

๐ŸŽจ ์ฒ˜๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜

  1. ์ด๋ฏธ์ง€ ๋กœ๋“œ: PIL๋กœ ์›๋ณธ ์ด๋ฏธ์ง€ ์ฝ๊ธฐ
  2. OCR ์‹คํ–‰: pytesseract๋กœ ํ…์ŠคํŠธ์™€ ์œ„์น˜ ์ •๋ณด ์ถ”์ถœ
  3. ํŒจํ„ด ๋งค์นญ: ์ •๊ทœํ‘œํ˜„์‹์œผ๋กœ ์ด๋ฉ”์ผ ์ฃผ์†Œ ํƒ์ง€
  4. ์˜์—ญ ์ถ”์ถœ: ํ•ด๋‹น ์œ„์น˜์˜ ์ด๋ฏธ์ง€ ์˜์—ญ ํฌ๋กญ
  5. ๋ธ”๋Ÿฌ ์ ์šฉ: ๊ฐ€์šฐ์‹œ์•ˆ ๋ธ”๋Ÿฌ๋กœ ํ…์ŠคํŠธ ๊ฐ€๋ฆผ
  6. ์ด๋ฏธ์ง€ ํ•ฉ์„ฑ: ์ฒ˜๋ฆฌ๋œ ์˜์—ญ์„ ์›๋ณธ์— ๋ถ™์—ฌ๋„ฃ๊ธฐ

โšก ์ดˆ๊ธฐ vs ์ตœ์ข… ๋ฐฉ์‹ ๋น„๊ต

โŒ ์ดˆ๊ธฐ ๋ฐฉ์‹ (๋ถ€์ •ํ™•)
์ถ”์ • ์ขŒํ‘œ๋กœ ๋ธ”๋Ÿฌ ์ฒ˜๋ฆฌ โ†’ ์‹ค์ œ ํ…์ŠคํŠธ ์œ„์น˜์™€ ๋ถˆ์ผ์น˜
โœ… ์ตœ์ข… ๋ฐฉ์‹ (์ •ํ™•)
OCR ๊ธฐ๋ฐ˜ ์ •ํ™•ํ•œ ์œ„์น˜ ํƒ์ง€ โ†’ 100% ์ •ํ™•ํ•œ ์ด๋ฉ”์ผ ์ฃผ์†Œ ์Œ์˜ ์ฒ˜๋ฆฌ

4. ์ž๋™ํ™” ๊ตฌํ˜„

์ž๋™ํ™” ๊ตฌํ˜„: Python ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ†ตํ•œ ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ ๋ฐ ํ’ˆ์งˆ ๊ฒ€์ฆ

๐Ÿ”ง ์ž๋™ํ™” ๋„๊ตฌ๋“ค

๐Ÿ›ก๏ธ ๋ณด์•ˆ ์กฐ์น˜

๋ฐฑ์—… ๋ฐ ๋ณต์›
- ์›๋ณธ ๋ฐฑ์—…: original_[ํŒŒ์ผ๋ช…].png ํ˜•ํƒœ๋กœ ๋ณด๊ด€
- ์ฒ˜๋ฆฌ ํŒŒ์ผ: ๊ธฐ์กด ํŒŒ์ผ๋ช… ์œ ์ง€ํ•˜์—ฌ ๋งํฌ ๋ฌด๊ฒฐ์„ฑ ๋ณด์žฅ
- ๋ณต์› ๊ฐ€๋Šฅ: ํ•„์š”์‹œ ์›๋ณธ์œผ๋กœ ๋˜๋Œ๋ฆฌ๊ธฐ ๊ฐ€๋Šฅ

5. ์‹ค์ œ ์ ์šฉ ์‚ฌ๋ก€

์‹ค์ œ ์‚ฌ๋ก€: Amazon Q CLI ์„ค์น˜ ๊ฐ€์ด๋“œ์—์„œ ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ ์ ์šฉ

๐Ÿ” ์ ์šฉ ๋Œ€์ƒ

Amazon Q CLI ์„ค์น˜ ๊ฐ€์ด๋“œ์—์„œ ๋‹ค์Œ ์ด๋ฏธ์ง€๋“ค์— ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ ์ฒ˜๋ฆฌ๋ฅผ ์ ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค:

Builder ID ๋กœ๊ทธ์ธ ํ™”๋ฉด

๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ์ฒ˜๋ฆฌ๋œ Builder ID ๋กœ๊ทธ์ธ ํ™”๋ฉด

โœ… ์ด๋ฉ”์ผ ์ฃผ์†Œ ์ž๋™ ๋ธ”๋Ÿฌ ์ฒ˜๋ฆฌ

์ด๋ฉ”์ผ ์ธ์ฆ ํ™”๋ฉด

๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ์ฒ˜๋ฆฌ๋œ ์ด๋ฉ”์ผ ์ธ์ฆ ํ™”๋ฉด

โœ… ์ด๋ฉ”์ผ ์ฃผ์†Œ ์ž๋™ ๋ธ”๋Ÿฌ ์ฒ˜๋ฆฌ

๐ŸŽฏ ์ฒ˜๋ฆฌ ๊ฒฐ๊ณผ

๐Ÿ’ก ์‹ค๋ฌด ์ ์šฉ ํŒ: ์ด ๋ฐฉ์‹์œผ๋กœ ์Šคํฌ๋ฆฐ์ƒท์ด ํฌํ•จ๋œ ๋ชจ๋“  ๋ฌธ์„œ์—์„œ ๊ฐœ์ธ์ •๋ณด๋ฅผ ์ž๋™์œผ๋กœ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ํ•™์Šต ์ž๋ฃŒ, ๋งค๋‰ด์–ผ, ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ ๋“ฑ์—์„œ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

6. ๊ฒฐ๊ณผ ๊ฒ€์ฆ

๊ฒฐ๊ณผ ๊ฒ€์ฆ: OCR ์ธ์‹๋ฅ  100%, ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ์™„๋ฃŒ

๐Ÿ“ˆ ์ฒ˜๋ฆฌ ์ •ํ™•๋„

๐ŸŽฏ ํšจ๊ณผ ๋ฐ ์˜์˜

๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ: ๊ฐœ์ธ ์‹๋ณ„ ์ •๋ณด ์™„์ „ ๊ฐ€๋ฆผ, ๋ฒ•์  ๋ฆฌ์Šคํฌ ์ œ๊ฑฐ
๊ธฐ์ˆ ์  ํ˜์‹ : OCR ๊ธฐ๋ฐ˜ ์ •ํ™•ํ•œ ์œ„์น˜ ํƒ์ง€, ์ˆ˜๋™ ์ขŒํ‘œ ์„ค์ • ๋Œ€๋น„ ์ •ํ™•๋„ ํ–ฅ์ƒ
๊ต์œก์  ๊ฐ€์น˜: ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ๊ธฐ์ˆ  ์‹ค์ฆ, ์‹ค๋ฌด ์ ์šฉ ๊ฐ€๋Šฅํ•œ ์ž๋™ํ™” ์†”๋ฃจ์…˜

๐Ÿ”„ ํ–ฅํ›„ ๊ฐœ์„  ๋ฐฉ์•ˆ

๋ฌธ์ œ ์ •์˜
OCR ๊ธฐ์ˆ 
๋ธ”๋Ÿฌ ์ฒ˜๋ฆฌ
์ž๋™ํ™” ๊ตฌํ˜„
์‹ค์ œ ์‚ฌ๋ก€