Broccoli's House
5회차 - (2) 파이썬을 이용한 이미지 크기 조절 및 흑백 처리 이미지 크기 조절 - 파이썬의 라이브러리 PIL의 ImageGrab.grab() 함수를 사용해서 스크린 이미지를 추출하면, 모니터의 해상도를 그대로 따르는 이미지가 추출된다. 현재 모니터의 해상도가 (1920X1080) 이므로, 이미지를 가공하기 위해 픽셀마다 어떠한 연산을 가하려면 너무 많은 계산량과 그에 따른 많은 시간이 소요된다. 따라서 이미지의 크기를 줄일 필요가 있다. - 이미지 크기 조절에는 이미지 관련 라이브러리인 OpenCV의 resize 함수를 사용한다. resize 함수를 사용하기 위해서는 스크린 이미지를 추출한 다음 배열로 변경해주어야 한다. 또한 줄이고자 하는 이미지의 크기와 크기를 변경할 때의 보간 방식(interp..
5회차 - (1) 파이썬을 이용한 시뮬레이터(BeamNG Drive) 영상 이미지 추출 직접적 방법 - 앞서 설치 및 환경을 구성한 Microsoft AirSim이나 TORCS에서는 프로그램 소스 코드를 이용하여 게임 이미지를 직접적으로 받아올 수 있다. AirSim의 경우 C언어 기반으로 작성된 시뮬레이터이지만, 서버-클라이언트 방식으로 파이썬에서 시뮬레이터의 이미지를 추출하는 API를 자체적으로 제공한다. 따라서 별 다른 어려움 없이, 예제 코드를 따라하면 그대로 영상을 추출할 수 있다. (https://github.com/Microsoft/AirSim/blob/master/docs/image_apis.md)를 참고하면 된다. - AirSim과는 다르게, TORCS에서 파이썬으로 이미지를 추출하는 것..
4회차 - (5) TORCS : SCR-패치 클라이언트 설정 클라이언트 - 클라이언트 : TORCS의 SCR-패치를 통해 서버가 열려있는 상태에서, 서버를 통해 게임의 데이터를 읽거나 쓰려면 메모리 영역을 읽어올 수 있는 클라이언트가 있어야 한다. 다른 어떤 언어로도 클라이언트를 만들 수 있으나, 여기에서는 C++과 파이썬으로 구성된 클라이언트를 소개하고자 한다. C++ 클라이언트 - 유튜브 (https://www.youtube.com/watch?v=mFo98deSk4Q)를 보면 자세한 과정을 알 수 있다. - URL (https://sourceforge.net/projects/cig/)에서 동일한 클라이언트를 다운받을 수 있다. 압축 파일을 받은 후에, 압축을 해제한다. 클라이언트는 게임 외부에서 작동..