주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.

비디오 입력 객체 시작 및 중지

R2026b

비디오 입력 객체를 생성할 때 MATLAB®와 이미지 수집 장치 간의 연결이 설정됩니다. 하지만 장치에서 데이터를 수집하기 전에 먼저 start 함수를 사용하여 객체를 시작해야 합니다.

start(vid);

기기를 시작하면 해당 기기를 사용자 전용으로 예약하고 구성을 잠급니다. 따라서 실행 중에는 특정 속성이 읽기 전용이 됩니다.

이미지 수집 객체는 다음 조건 중 하나라도 충족되면 실행을 중지합니다.

  • 요청한 수의 프레임이 수집되었습니다. 이는 다음과 같은 경우에 발생합니다.

    FramesAcquired = FramesPerTrigger * (TriggerRepeat + 1)

    여기서 FramesAcquired, FramesPerTrigger, 및 TriggerRepeat는 비디오 입력 객체의 속성입니다. 이러한 속성에 대한 자세한 내용은 이미지 데이터 수집를 참조하십시오.

  • 런타임 오류가 발생합니다.

  • 객체의 Timeout 값에 도달했습니다.

  • stop 함수를 실행합니다.

객체가 시작될 때 툴박스는 객체의 Running 속성을 'on'로 설정합니다. 객체가 실행 중이 아닐 때 툴박스는 객체의 Running 속성을 'off'로 설정합니다. 이 상태를 정지(stopped)라고 합니다.

다음 그림은 물체가 달리는 상태에서 정지한 상태로 이동하는 과정을 보여줍니다.

달리는 상태에서 정지 상태로의 전환

다음 예는 객체를 시작하고 중지하는 방법을 보여줍니다.

  1. 이미지 수집 객체 생성 — 이 예제는 웹캠 이미지 수집 장치용 비디오 입력 객체를 생성합니다. 이 예제를 시스템에서 실행하려면 imaqhwinfo 함수를 사용하여 이미지 수집 장치에 대한 객체 생성자를 가져오고 해당 구문을 다음 코드로 바꾸십시오.

    vid = videoinput('winvideo',1);
  2. 이미지가 정지 상태인지 확인합니다. — isrunning 함수를 사용하여 비디오 입력 객체의 현재 상태를 확인합니다.

    isrunning(vid)
    
    ans =
    
         0
  3. 속성 구성 객체 상태를 설명하기 위해 비디오 입력 객체의 TriggerType 속성을 'Manual'로 설정합니다. TriggerType 속성을 포함한 특정 트리거 속성의 값을 설정하려면 triggerconfig 함수를 사용해야 합니다. 자세한 내용은 트리거 속성의 값 설정를 참조하십시오.

    triggerconfig(vid, 'Manual')

    비디오 입력이 기록 상태에 표시되도록 몇 초 정도 걸리는 캡처 시간을 설정하십시오.

    vid.FramesPerTrigger = 100;
  4. 이미지 수집 객체 시작 — start 함수를 호출하여 이미지 수집 객체를 시작합니다.

    start(vid)
  5. 이미지가 실행 중이지만 로그가 기록되지 않는지 확인합니다. — isrunning 및 islogging 함수를 사용하여 비디오 입력 객체의 현재 상태를 확인합니다. 수동 트리거를 사용하는 경우, 비디오 입력 객체는 시작된 후 실행 상태가 되지만 트리거가 실행될 때까지 데이터 기록을 시작하지 않습니다.

    isrunning(vid)
    
    ans =
    
         1
    
    islogging(vid)
    
    ans =
    
         0
  6. 수동 트리거 실행 — trigger 함수를 호출하여 수동 트리거를 실행합니다.

    trigger(vid)

    데이터 수집이 진행되는 동안 비디오 입력 객체의 기록 상태를 확인하십시오.

    islogging(vid)
    
    ans =
    
         1

    지정된 프레임 수를 수집한 후 비디오 입력 객체는 실행을 중지합니다.

    isrunning(vid)
    
    ans =
    
         0
  7. 정리 — 더 이상 필요하지 않으면 메모리에서 이미지 수집 객체와 이를 참조하는 변수를 항상 제거합니다.

    delete(vid)
    clear vid