๊ฒ์ ๋ด ๋ณต์กํ ์์ดํ ๊ฐ์น๋ฅผ ๋น ๋ฅด๊ณ ์ง๊ด์ ์ผ๋ก ๊ณ์ฐํด์ฃผ๋ ์ค๋ฒ๋ ์ด ๋๊ตฌ์ ๋๋ค.
๊ฒ์ ํ๋ ์ด ์ค ์์ดํ ์ ์ด ๊ฐ๊ฒฉ๊ณผ ์นธ ์๋ฅผ ์๋์ผ๋ก ์ธ์ํ์ฌ, **"1์นธ๋น ๊ฐ์น(์นธ์ฑ๋น)"**๋ฅผ ์ค์๊ฐ์ผ๋ก ๊ณ์ฐํด ํ๋ฉด์ ๋์์ค๋๋ค. ํ๋ฐ ํจ์จ์ ๊ทน๋ํํ๊ธฐ ์ํด ๊ฐ๋ฐ๋์์ต๋๋ค.
-
์ค์๊ฐ ์ด๋ฏธ์ง ๋ถ์ (Real-time Analysis)
- OCR (๊ดํ ๋ฌธ์ ์ธ์): Tesseract ์์ง์ ํ์ฉํ์ฌ ์์ดํ ์ ๊ฐ๊ฒฉ ์ ๋ณด๋ฅผ ์ ํํ๊ฒ ์ถ์ถํฉ๋๋ค.
- ์ปดํจํฐ ๋น์ (Computer Vision): OpenCV๋ฅผ ์ฌ์ฉํ์ฌ ์์ดํ ์ด ์ฐจ์งํ๋ ์ธ๋ฒคํ ๋ฆฌ ์นธ ์๋ฅผ ์๋์ผ๋ก ์ธ์ํฉ๋๋ค. (์ค๊ณฝ์ ๊ฒ์ถ ๋ฐ ํ ํ๋ฆฟ ๋งค์นญ ์๊ณ ๋ฆฌ์ฆ ์ฌ์ฉ)
-
์ง๊ด์ ์ธ ์ค๋ฒ๋ ์ด UI
- ๊ฒ์ ํ๋ฉด ์์ ํฌ๋ช ํ ์ค๋ฒ๋ ์ด๋ฅผ ๋์ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ค๋๋ค.
- ๋ง์ฐ์ค ์ปค์ ์์น๋ฅผ ์ถ์ ํ์ฌ ์์ ์ ๋ฐฉํดํ์ง ์๋ ์ต์ ์ ์์น์ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค.
- ํต์ฌ ์ ๋ณด ๊ฐ์กฐ: ํ๋ฐ ๊ฒฐ์ ์ ๊ฐ์ฅ ์ค์ํ **'์นธ๋น ๊ฐ๊ฒฉ'**์ ํฌ๊ฒ ํ์ํฉ๋๋ค.
-
๊ฐํธํ ์กฐ์ & ์ต์ ํ
- ๋จ์ถํค (
z): ์ํ๋ ์์ดํ ์ ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฌ๊ณ ํค ํ๋๋ง ๋๋ฅด๋ฉด ์ฆ์ ๋ถ์ํฉ๋๋ค. - ์ค๋งํธ ์ค์บ: ์ค์บ ์๊ฐ ์ค๋ฒ๋ ์ด๋ฅผ ์ ์ ์จ๊ฒจ OCR ์ธ์๋ฅ ์ ๋์ด๊ณ ๊ฐ์ญ์ ๋ฐฉ์งํฉ๋๋ค.
- ์ด๋ฏธ์ง ๋งค์นญ ๋ชจ๋: ์์ฃผ ๋ฑ์ฅํ๋ ์นธ ๋ชจ์์ ๋ฏธ๋ฆฌ ํ์ต์์ผ ์ธ์ ์ ํ๋๋ฅผ 100%์ ๊ฐ๊น๊ฒ ๋ณด์ ํ ์ ์์ต๋๋ค.
- ๋จ์ถํค (
- Language: Python 3.10+
- GUI: Tkinter (Overlay Interface)
- Computer Vision: OpenCV (Slot Detection), NumPy
- OCR: Tesseract-OCR (Price Text Extraction)
- Input Handling: Pynput, Keyboard (Global Hotkeys)
- Screen Capture: MSS (Fast Screenshot)
- Packaging: PyInstaller (Standalone Executable)
์๊ตฌ ์ฌํญ (Prerequisites):
- Python 3.10+
- Tesseract-OCR (์ง์ ์ค์น ํ์)
์คํ ๋ฐฉ๋ฒ:
- zip ํ์ผ ์์ถ ํด์
- Tesseract-OCR ์ค์นํ ์์ถ ํด์ ํด๋๋ก ๋ณต์ฌํด์ฃผ์ธ์.
- ๊ฒฝ๋ก C:\Program Files\Tesseract-OCR >> C:\Users\main\Downloads\DeltaViewer\tesseract
- cmd์์ pip install -r requirements.txt ์คํ
- run_admin.bat ์คํ
- ํ๋ก๊ทธ๋จ์ ์คํํ๋ฉด ์ ์ ํ "Overlay Ready" ๋ฉ์์ง๊ฐ ๋ง์ฐ์ค ๊ทผ์ฒ์ ๋ํ๋ฉ๋๋ค.
- ๊ฒ์ ๋ด์์ ๊ฐ์น๋ฅผ ํ์ธํ๊ณ ์ถ์ ์์ดํ ์ค์์ ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฝ๋๋ค.
zํค๋ฅผ ๋๋ฆ ๋๋ค.- ์ค๋ฒ๋ ์ด์ ๊ณ์ฐ๋ ์ ๋ณด๊ฐ ํ์๋ฉ๋๋ค.
- P/S (ํฐ ๊ธ์จ): 1์นธ๋น ๊ฐ๊ฒฉ (ํจ์จ)
- Total: ์ด ๊ฐ๊ฒฉ
- Slots: ์ฐจ์งํ๋ ์นธ ์
- ํ๋ก๊ทธ๋จ ์ข
๋ฃ๋ **
Shift + z**๋ฅผ ๋๋ฅด๋ฉด ๋ฉ๋๋ค.
-
OCR ์ค์ธ์ ๋ฌธ์ : ์ด๊ธฐ์ ์ซ์
1์l๋ก ์ฝ๊ฑฐ๋ ์ฝค๋ง(,)๋ฅผ ์ (.)์ผ๋ก ์ฝ๋ ๋ฌธ์ ๊ฐ ์์์ต๋๋ค.- ๐ ํด๊ฒฐ: Tesseract์
whitelist์ค์ ์ ํตํด ์ซ์์ ๊ธฐํธ๋ง ์ฝ๋๋ก ์ ํํ๊ณ , ์ ๊ท์(Regex)์ ํ์ฉํ **'์ต๋ ์ ์ ์ถ์ถ ์๊ณ ๋ฆฌ์ฆ'**์ ์ ์ฉํ์ฌ ๋ ธ์ด์ฆ ์์์๋ ์ ํํ ๊ฐ๊ฒฉ์ ์ฐพ์๋ด๋๋ก ๊ฐ์ ํ์ต๋๋ค.
- ๐ ํด๊ฒฐ: Tesseract์
-
์ค๋ฒ๋ ์ด ๊ฐ์ญ: ์ค๋ฒ๋ ์ด๊ฐ ๋ ์๋ ์ํ์์ ์ฌ์ค์บ ์, ์ค๋ฒ๋ ์ด์ ๊ธ์๋ฅผ OCR์ด ์ฝ์ด๋ฒ๋ฆฌ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค.
- ๐ ํด๊ฒฐ: ์ค์บ ํธ๋ฆฌ๊ฑฐ๊ฐ ๋ฐ๋๋๋ฉด ์ค๋ฒ๋ ์ด๋ฅผ 0.1์ด๊ฐ ์จ๊ธด ํ ํ๋ฉด์ ์บก์ฒํ๊ณ , ๋ค์ ๊ฒฐ๊ณผ๋ฅผ ๋์ฐ๋ ๋ฐฉ์์ผ๋ก ๊ฐ์ญ์ ์์ฒ ์ฐจ๋จํ์ต๋๋ค.
-
๋ค์ํ ํด์๋ ๋์: ์ฌ์ฉ์๋ง๋ค ๊ฒ์ ํด์๋๊ฐ ๋ฌ๋ผ ๊ณ ์ ๋ ์ขํ๋ก๋ ํ๊ณ๊ฐ ์์์ต๋๋ค.
- ๐ ํด๊ฒฐ: ๋ง์ฐ์ค ์ปค์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ผ์ ์์ญ(
400x300px)์ ๋์ ์บก์ฒ(ROI) ํ์ฌ ์๋ํ๋๋ก ๊ตฌํํ์ต๋๋ค.
- ๐ ํด๊ฒฐ: ๋ง์ฐ์ค ์ปค์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ผ์ ์์ญ(
Developed by flyingjoojak