Kinesis Video Streams를 사용하여 로컬에서 Rekognition 결과 표시 - Amazon Rekognition

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Kinesis Video Streams를 사용하여 로컬에서 Rekognition 결과 표시

- Rekognition 예제에 제공된 Amazon Kinesis Video Streams 파서 라이브러리의 예제 테스트를 사용하여 Amazon Kinesis Video Streams의 피드에 표시된 Amazon Rekognition Video의 결과를 확인할 수 있습니다. KinesisVideo KinesisVideoRekognitionIntegrationExample는 감지된 얼굴 위에 경계 상자를 표시하고 JFrame을 통해 로컬에서 비디오를 렌더링합니다. 이 프로세스는 디바이스 카메라의 미디어 입력을 Kinesis 비디오 스트림에 성공적으로 연결하고 Amazon Rekognition 스트림 프로세서를 시작했다는 것을 가정한 것입니다. 자세한 설명은 GStreamer 플러그인을 사용한 스트리밍 섹션을 참조하세요.

1단계: Kinesis Video Streams 구문 분석 라이브러리 설치

디렉터리를 생성하고 GitHub 리포지토리를 다운로드하려면 다음 명령을 실행하세요.

$ git clone https://github.com/aws/amazon-kinesis-video-streams-parser-library.git

라이브러리 디렉터리로 이동한 후 다음 Maven 명령을 실행하여 클린 설치를 수행합니다.

$ mvn clean install

2단계: Kinesis Video Streams 및 Rekognition 통합 예제 테스트 구성

KinesisVideoRekognitionIntegrationExampleTest.java 파일을 엽니다. 클래스 헤더 바로 뒤에 있는 @Ignore를 제거합니다. Amazon Kinesis 및 Amazon Rekognition 리소스의 정보로 데이터 필드를 채웁니다. 자세한 설명은 Amazon Rekognition Video 및 Amazon Kinesis 리소스 설정 섹션을 참조하세요. Kinesis 비디오 스트림으로 비디오를 스트리밍하는 경우 inputStream 파라미터를 제거하세요.

다음 코드 예제를 참조하세요.

RekognitionInput rekognitionInput = RekognitionInput.builder() .kinesisVideoStreamArn("arn:aws:kinesisvideo:us-east-1:123456789012:stream/rekognition-test-video-stream") .kinesisDataStreamArn("arn:aws:kinesis:us-east-1:123456789012:stream/AmazonRekognition-rekognition-test-data-stream") .streamingProcessorName("rekognition-test-stream-processor") // Refer how to add face collection : // https://docs.aws.amazon.com/rekognition/latest/dg/add-faces-to-collection-procedure.html .faceCollectionId("rekognition-test-face-collection") .iamRoleArn("rekognition-test-IAM-role") .matchThreshold(0.95f) .build(); KinesisVideoRekognitionIntegrationExample example = KinesisVideoRekognitionIntegrationExample.builder() .region(Regions.US_EAST_1) .kvsStreamName("rekognition-test-video-stream") .kdsStreamName("AmazonRekognition-rekognition-test-data-stream") .rekognitionInput(rekognitionInput) .credentialsProvider(new ProfileCredentialsProvider()) // NOTE: Comment out or delete the inputStream parameter if you are streaming video, otherwise // the test will use a sample video. //.inputStream(TestResourceUtil.getTestInputStream("bezos_vogels.mkv")) .build();

3단계: Kinesis Video Streams 및 Rekognition 통합 예제 테스트 실행

Kinesis 비디오 스트림으로 스트리밍하는 경우 Kinesis 비디오 스트림이 미디어 입력을 받고 있는지 확인하고 Amazon Rekognition Video 스트림 프로세서가 실행 중인 상태에서 스트림 분석을 시작하세요. 자세한 설명은 Amazon Rekognition Video 스트림 프로세서 작업 개요 섹션을 참조하세요. KinesisVideoRekognitionIntegrationExampleTest 클래스를 JUnit 테스트로 실행하세요. 잠시 후 Kinesis 비디오 스트림의 비디오 피드가 포함된 새 창이 열리고 감지된 얼굴 위에 경계 상자가 그려집니다.

참고

바운딩 박스 레이블에 1-Trusted, 2-Intruder, 3-Neutral 등 의미 있는 텍스트를 표시하려면 이 예제에 사용된 컬렉션의 얼굴에 다음 형식으로 지정된 외부 이미지 ID (파일 이름) 가 있어야 합니다. PersonName PersonName PersonName 레이블은 색상으로 구분할 수도 있으며.java 파일에서 사용자 정의할 수 있습니다. FaceType