opencv trackbar 예제

트랙바를 만들려면 먼저 트랙바가 위치할 창을 만들어야 합니다. 따라서 cv2.getTrackbarPos() 함수의 경우 첫 번째 인수는 트랙바 이름, 두 번째 인수는 연결된 창 이름, 세 번째 인수는 기본값, 네 번째 인수는 최대 값, 다섯 번째 인수는 매번 실행되는 콜백 함수입니다. 트랙바 값이 변경됩니다. 콜백 함수에는 항상 트랙바 위치인 기본 인수가 있습니다. 우리의 경우, 기능은 아무것도하지 않습니다, 그래서 우리는 단순히 전달합니다. 트랙 바의 또 다른 중요한 응용 프로그램은 버튼이나 스위치로 사용하는 것입니다. OpenCV는 기본적으로 단추 기능이 없습니다. 따라서 트랙바를 사용하여 이러한 기능을 얻을 수 있습니다. 우리의 응용 프로그램에서, 우리는 스위치가 켜져있는 경우에만 응용 프로그램이 작동하는 하나의 스위치를 만들었습니다, 그렇지 않으면 화면은 항상 검은 색입니다.

글쎄, 그것은 몇 가지 멋진 GUI 도구를 사용하는 시간이다. OpenCV는 당신을 위해 몇 가지 GUI 유틸리티 (하이기 모듈)를 제공합니다. 이 것의 예는 트랙바입니다. 마지막으로, 우리는 연습의 방법으로 on_trackbar에 콜백 기능을 정의해야, 당신은 또한 이미지의 대비와 밝기를 변경에서 만든 프로그램에 대한 두 개의 트랙 바를 추가 할 수 있습니다!. 하나의 트랙바는 (alpha)를 설정하고 다른 트랙바는 (beta) 설정에 대해 설정합니다. 출력은 다음과 같이 보일 수 있습니다 :이 자습서에서는 트랙 바에서 입력 정보를 얻을 수 있도록 두 개의 이전 프로그램을 수정합니다. 여기서 우리는 당신이 지정한 색상을 보여주는 간단한 응용 프로그램을 만들 것입니다. 색상과 B, G, R 색상의 각을 지정하는 세 개의 트랙 바를 표시하는 창이 있습니다. 트랙바를 슬라이드하고 그에 따라 창 색상이 변경됩니다. 기본적으로 초기 색상은 검은색으로 설정됩니다. 마지막으로 Java에서 익명 내부 클래스 리스너를 사용하여 C ++ 및 Python 코드에 대한 on_trackbar의 콜백 함수를 정의해야합니다.예를 들어 크기 조정 등을 추가하는 등 2 개 이상의 트랙 바를 만들 수 있습니까? 나는 시도 (다른 사람 옆에) 무효 MyCallbackForBrightness (int iValueForBrightness, 무효 *userData1, 무효 *userData2){…} createTrackbar (“밝기”, “트랙 바 창”, 및 iValueForBrightness, 510, MyCallbackForBrightness, & iValueForContrasts, & iValueForResize);하지만 이 작동하지 않습니다.

정말 고마워요. 🙂 다음 자습서에서 2 개 이상의 트랙바를 추가했습니다.https://www.opencv-srf.com/2010/09/개체 감지-사용-색상-seperation.html 이 자습서 코드는 아래 줄에 표시 되어 있습니다. 여기에서 다운로드할 수도 있습니다. 응용 프로그램의 스크린 샷은 다음과 같습니다 . OpenCV를 사용하여 두 개의 이미지를 추가(블렌딩)하는 자습서에서 만든 프로그램을 수정해 보겠습니다. 사용자가 Trackbar를 사용하여 (alpha) 값을 입력하도록 합니다. . . 먼저 혼합될 02개의 이미지를 로드합니다. 이전 자습서 (선형 혼합 및 밝기 및 대비 조정에 대 한) 당신은 우리가 우리의 프로그램에 몇 가지 입력을 제공 하는 데 필요한 지적 할 수 있습니다., 와 같은 . 터미널을 사용하여 이 데이터를 입력하여 이를 달성했습니다. 트랙바와 관련된 코드만 분석합니다.

. . . .