자동화

조회 수 4392 추천 0 댓글 4

제가 지금 pyautogui 로 이미지를 인식하고있는데


서칭하는데 대략 1 ~ 2 초 걸리더라고요 


서칭시간을 줄이는법이 따로있을까요 ?


없다면 


openCV는 이미지 서칭할떄 빠르게 잡히나요 ?


아니면 


파이썬으로는 이미지 인식 걍 노답인가요 ?


C# 으로 만들어야할까요 ?


도와주세요 선생님 


  • profile
    소심비형 2019.08.13 07:38

    속도 문제라면... 네이티브 언어로 하시는게 좋아 보입니다. C언어를 이용하는게 가장 빠르고요. 그담에 C#으로 픽셀 오브젝트가 아닌 포인터를 이용해서 C언어만큼 속도를 낼 수 있습니다. lockbit로 검색해보시면 예제가 많습니다. 참고로 아래 링크에 설명이 잘 되어 있어요.

    ###  링크를 넣을수가 없군요^^; 구글에서 검색해보면 많은 자료가 나옵니다... ###


    OpenCV도 내부적으로는 lockbit를 이용해서 포인터로 메모리 주소 참조하는걸로 알고 있는데요. 아마도... 이미지 서치한 다음에 후처리 부분에서 다시 오브젝트 방식으로 접근하는게 아닌가싶네요. 여러가지 테스트 해봤는데 일단 C가 가장 속도가 빠릅니다. 그다음에 C#이나 파이썬 같은 언어로 네이티브로 코드를 짜는게 좋고 OpenCV를 네이티브로 이용해도 비슷한 효과를 속도가 나옵니다. 아래 코드처럼 

            private static int[][] GetPixelArray(Bitmap bitmap)

            {

                var result = new int[bitmap.Height][];

                var bitmapData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb);


                for (int y = 0; y < bitmap.Height; ++y)

                {

                    result[y] = new int[bitmap.Width];

                    Marshal.Copy(bitmapData.Scan0 + y * bitmapData.Stride, result[y], 0, result[y].Length);

                }


                bitmap.UnlockBits(bitmapData);

                return result;

            }


    반환 값은 바이트 주소를 나타내는 포인터입니다. 편하게 코딩하려면 픽셀 2중 포문(폭, 높이)으로 처리하는게 쉽긴합니-_-;

  • profile
    소심비형 2019.08.13 08:05
    참고로 파이오토지유아이 관련 유튭 강좌 있던데요. 한번 봐보세요~
  • 현질하다털림 2019.08.13 17:05
    아이고 선생님 매번 감사합니다 ㅜ
    정말 선생님덕분에 많을 걸 배웁니다

    매우 감사합니다 ㅜ

    결과적으로 pyautogui이미지 서칭속도 줄이는법은 없고

    C# or 파이썬으로 openCV를 사용하시라는 말씀이네요
  • ak47! 2019.09.04 02:12

    opencv사용하면 속도 괜찮아요


List of Articles
분류 제목 글쓴이 최근변경 추천
자유 프로그래밍 게시판 소개 피카부 2023.04.01 0/0
질문 c# maple 이미지서칭 질문 bsd1 2019.02.13 0/0
질문 파이썬 질문입니다.(돌키우기매크로) tuf1992 2021.01.10 0/0
질문 크랙해드립니다 딴규 2019.02.26 0/0
질문 혹시 새양님 c# 예제 소스 가지고 계신분 있나요? 케록케록 2019.03.27 0/0
질문 파이썬으로 비활성 이미지서치 구현하신분 있으신가요? 2 솜털뭉치 2019.06.09 0/0
질문 c#으로 매크로만들면 게임우회 따로안해도 되나요? 이거이거좋아 2019.04.19 0/0
질문 [요청] 혹시 c# 으로 개발된 매크로 소스가 있을까요 ? 1 빵글빵글 2019.08.27 0/0
질문 파이썬으로 만든 매크로 레코더 호블리 2019.05.16 0/0
질문 c# 개발자님께 문의 드립니다.. 빵글빵글 2019.06.05 0/0
질문 혹시 c# 새양 매크로라는 소스 공유해 주실 수 있는분 ... 2 윤봉길 2019.06.10 0/0
질문 하드웨어 메크로 만들어 봤습니다. 호블리 2019.06.12 0/0
질문 매크로 프로그램을 만들어 보고싶습니다. 4 BENLY 2019.06.17 0/0
질문 파이썬 매크로 게임마다 인식이 되고 안되고 8 현질하다털림 2019.08.10 0/0
질문 파이썬으로 매크로같은거 만드는 중인데 3 현질하다털림 2019.12.04 0/0
질문 파이썬 if문 조건절에서 None에 반대 2 현질하다털림 2019.08.12 0/0
질문 파이썬 openCV vs pyautogui 이미지 인식 4 현질하다털림 2023.05.29 0/0
질문 메이플 파이썬 2 widsh 2019.08.14 0/0
질문 파이썬 while문 키입력으로 빠져나오기 5 현질하다털림 2019.08.14 0/0
질문 파이썬 openCV 명령어 이미지인식 1 현질하다털림 2019.09.04 0/0
질문 블루스택3 어플리케이션 실행 방법있나요? tasi12 2019.08.16 0/0
Board Pagination Prev 1 2345678910 11 Next
/ 11

전체 최신 인기글

전체 주간 인기글