Vpro 지원 카메라

 

  • 지원 카메라 여부는 코그넥스 홈페이지 내 지원 페이지에서 확인 가능하다.

  • 현재 가지고 있는 카메라가 지원 목록에 있다면 CogframeGrabber 클래스에서 인식이 가능하며
    목록에 없는 카메라도 간혹 CogframeGrabbers 클래스에 인식하는 경우가 있지만 카메라 제어에 예상치 못한 문제가 생길 수 있다.

 ICogImage 취득

  • 다음은 CogframeGrabbers 클래스에 첫번째 인식 된 카메라를 8비트 흑백 이미지로 출력하는 소스다.
  • 사용하는 카메라가 칼라라면 지원 videoformat중 원하는 format으로 설정해서 Create하면 된다.

  • StartAcquire 함수 실행 후 카메라가 동작을 완료하면 Complete이벤트가 발생하고
    CompleteAcquireEX함수가 리턴하는 ICogImage를 이용하여 로직을 구현하면 된다.

  • VisionPro는 기본적으로 함수 입력 이미지가 ICogImage로 되어 있다.

  • 여러가지 이미지 포멧들을 ICogImage로 컨버트해서 사용하거나 카메라에서 직접 ICogImage로 취득해서 사용한다.

using Cognex.VisionPro;
using System.Windows.Forms;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        private ICogAcqFifo acqFifo;

        public Form1()
        {
            InitializeComponent();
            InitFramegrabbers();

        }

        private void InitFramegrabbers()
        {
            CogFrameGrabbers grabbers = new CogFrameGrabbers();
            if(grabbers.Count > 0)
            {
                ICogFrameGrabber gb = grabbers[0];
                CogStringCollection videoFormat = gb.AvailableVideoFormats;
                acqFifo = gb.CreateAcqFifo(videoFormat[0], CogAcqFifoPixelFormatConstants.Format8Grey, 0, true);
                acqFifo.Complete += AcqFifo_Complete;
            }
        }

        private void AcqFifo_Complete(object sender, CogCompleteEventArgs e)
        {
            ICogAcqInfo acqInfo = new CogAcqInfo();
            ICogImage resultImage = acqFifo.CompleteAcquireEx(acqInfo);
        }

        private void OneShot()
        {
            acqFifo.StartAcquire(); 
        }
    }
}

 

+ Recent posts