이미지를 순간적으로 캡쳐하여 변수로 문자그대로 받고싶습니다.
해당 기능을 가진 라이브러리가 있나요?
예로
시간이 지남에 따라 게임의 재화 획득공식에 따라 + 될 때,
재화를 표기해주는 영역을 catch하고 스캔해서 해당 재화만큼 변수로 저장받고 싶습니다.
게임이름이 녹스라면
nox.money := catch_image.toNum 이나 catch_image.toString 형식으로 받는 그런 함수를 찾고 싶습니다.
toNum, toString이 작동하는지도 모르지만 비슷한 과정과 결과를 갖는 방법을 아시는분이 계신지요.
P.S.
해당이미지를 0~9 까지의 숫자 이미지를 각각 가지고 있어
이미지를 비교하여 같으면 해당숫자를 문자로받아서 str += 로 차례로 받아
정수형태로 변환해주는 방법을 만들어서 두고두고 쓸까 하는데 이미지 비교시 색, 폰트의 차이가 있을 것 같아
많은 시행착오가 있을것 같습니다. 이 방법의 해결방안을 알고계신지도 궁금합니다.
------------------------------------------------------------------------------------------
사진 예)
오토핫키에서 사용할 수 있는 OCR라이브러리도 있고 (구글에 ocr ahk 등으로 검색하면 많이 나옵니다. 굉장히 많이..)
CLI형 OCR 프로그램을 구하셔서 하시는 방법도 있습니다.
오토핫키에서 OCR을 사용하는 방법은 꽤 다양해서... 본인이 어느정도 수준을 원하느냐가 중요합니다.
왜냐면 무료로 공개되어있는 것들은 성능이 그렇게 좋지는 않습니다.. 보통 테서렉트 기반의 OCR프로그램들이 성능이 잘 나오긴 하는데 이것도 TrainData의 품질에 따라 천차만별입니다.
테서렉트 바이너리 중에 CLI 기반으로 된것들도 찾으면 나옵니다.
https://github.com/tesseract-ocr/tesseract/wiki ..이런것들도 있고요
http://capture2text.sourceforge.net/ 이 프로그램은 기본적으로 GUI 프로그램이지만 CLI도 제공합니다.
또한 이미지의 품질이나 폰트, 크기에도 영향을 대단히 많이 받아서... 경우에 따라서는 이미지처리 기술도 중요하게 작용하게 되는데 여기까지 가게되면 사실 뚝딱 만들어낼 수 있는 간단한 코딩은 아니게 됩니다.
여기서 좀 더 나아가면 테서렉트의 경우 커스텀 학습을 시킬 수 있다는것이 가장 큰 장점이므로, 테서렉트 OCR 학습 데이터 만드는 방법을 공부하셔서 인식하고자 하는 폰트의 숫자를 기반으로 학습을 시키시면 됩니다.
http://kyubuem.tistory.com/53
일단 사용하고자 하는 게임의 이미지에 잘 맞는 OCR기술을 확보하시고,
캡쳐 및 OCR처리 후 결과 데이터 반환을 해주는 함수는 스스로 만드셔야 합니다.
질문글 쓰신걸로봐서는 코딩에 전혀 문외한은 아니신듯한데 OCR기술만 확보하시면 만드시는건 어렵지 않으리라 사료됩니다..
번외로, OCR로 구현하기 번거로운 경우 좀 노가다는 더 하겠으나 숫자 하나하나를 다 이미지로 보관하고 이미지매칭을 이용해 전체 숫자를 구하는 방법도 있기는 합니다. 생각하기에 따라서는 이 방법이 더 쉬운 접근법이 될수도 있습니다