使用 Kinesis Video Streams 本機顯示 Rekognition 結果 - Amazon Rekognition

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Kinesis Video Streams 本機顯示 Rekognition 結果

您可以使用 Amazon Kinesis 影片串流剖析器程式庫的範例測試範例測試,在 Amazon Kinesis Video Streams 中查看 Amazon Rekognition 影片的結果-重新認知範例。KinesisVideo KinesisVideoRekognitionIntegrationExample 會在偵測到的人臉上顯示邊界方框,並透過 JFrame 在本機上轉譯影片。此程序假設您已成功將媒體輸入從裝置攝影機連接到 Kinesis 影片串流,並啟動 Amazon Rekognition 串流處理器。如需詳細資訊,請參閱 使用 GStreamer 外掛程式進行串流

步驟 1:安裝 Kinesis 影片串流剖析程式庫

若要建立目錄並下載 Github 儲存庫,請執行下列命令:

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

導航到庫目錄並執行以下 Maven 命令以執行全新安裝:

$ mvn clean install

步驟 2:設定 Kinesis 影片串流和 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 串流處理器的情況下開始分析串流。如需詳細資訊,請參閱 亞馬遜視訊串流處理器操作概觀。執行該 KinesisVideoRekognitionIntegrationExampleTest 類作為一個 JUnit 測試。短暫的延遲後,會開啟一個新視窗,其中包含 Kinesis 影片串流中的影片,並在偵測到的人臉上繪製邊框。

注意

此範例中使用的集合中的臉孔必須具有以此格式指定的外部影像 ID (檔案名稱),才能讓邊界方框標籤顯示有意義的文字: PersonName1-信任、 PersonName 2 入侵者、 PersonName 3-中立等。標籤也可以進行顏色編碼,並且可以在 FaceType .java 文件中進行自定義。