안녕하세요
MIL은 Matrox Imaging Library의 약자로, Matrox에서 생산하는 Matrox 시리즈 이미지 캡처 카드를 중심으로 제공되는 이미지 처리 기능 라이브러리입니다.
일반적으로 사용되는 여러 기능은 다음과 같습니다.
MappAllocDefault(); 기본 구성, 애플리케이션, 시스템, 디지타이저, 디스플레이 및 버퍼는 모두 기본 조건에 따라 구성됩니다.
MappAlloc(); 이 함수는 다른 MIL 함수를 사용하기 전에 사용해야 합니다.
MsysAlloc(); 하드웨어 환경을 구성하고 사용되는 보드 유형을 지정하며 보드 일련 번호를 사용합니다. 이 함수는 버퍼, 디스플레이, 디지타이저를 할당하기 전에 사용해야 합니다.
MdigAlloc(); 추상 이미지 캡처 카드를 구성하고 사용할 수 있는 캡처 카드 채널 수를 지정한 다음 이미지 캡처 카드 기능을 사용합니다.
MdispAlloc(); 이 추상화를 사용하여 카메라가 수집한 이미지를 표시하도록 디스플레이를 구성합니다.
MbufAlloc2d()는 2차원 메모리 영역을 할당합니다.
……
SizeX는 이미지의 길이, SizeY는 이미지의 너비, SizeBand는 이미지의 색상 채널 수입니다. 읽은 데이터를 분석하면 특정 이미지 픽셀 데이터가 위에서 아래로, 위에서 오른쪽으로 저장된다는 것을 알 수 있습니다. unsigned?char?*data=new?unsigned?char[SizeX*SizeBand*SizeY]; unsigned?char?red=0, green=0, blue=0; // 연속적으로 수집되는 10프레임의 이미지 int?i,j;while(k--){MdigGrab(ColorMilDigitizer,?ColorMilImage8[0]);
MbufGetColor(ColorMilImage8[0], M_PACKED? M_BGR24, M_ALL_BANDS, data) for(i =0;ilt;SizeY/2;i)for(j=0;jlt;SizeX*SizeBand;j =SizeBand){blue=*(data i*SizeX*SizeBand j 0);green=*(data i*SizeX *SizeBand j 1); red = * (data i*Size ], ColorMilImageDisp, M_ALL_BANDS?)
}delete?data
2개의 신호를 수집하도록 설정; 동시에 메인 스레드는 두 스레드의 실행을 제어합니다.
도움이 되셨으면 좋겠습니다