

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

# 使用 Kinesis Video Streams 本機顯示 Rekognition 結果
<a name="displaying-rekognition-results-locally"></a>

 您可以使用 [KinesisVideo：Rekognition 範例](https://github.com/aws/amazon-kinesis-video-streams-parser-library#kinesisvideo---rekognition-examples)中的 Amazon Kinesis Video Streams 解析器程式庫的範例測試，查看您 Amazon Kinesis Video Streams 摘要中顯示的 Amazon Rekognition Video 結果。`KinesisVideoRekognitionIntegrationExample` 會在偵測到的人臉上顯示邊界方框，並透過 JFrame 在本機上轉譯影片。此程序假設您已成功將媒體輸入從裝置攝影機連接到 Kinesis 影片串流，並啟動 Amazon Rekognition 串流處理器。如需詳細資訊，請參閱 [使用 GStreamer 外掛程式進行串流](streaming-using-gstreamer-plugin.md)。

## 步驟 1：安裝 Kinesis 影片串流剖析程式庫
<a name="step-1-install-parser-library"></a>

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

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

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

```
$ mvn clean install
```

## 步驟 2：設定 Kinesis 影片串流和 Rekognition 整合範例測試
<a name="step-2-configure-kinesis-video-rekognition-example-test"></a>

 開啟 `KinesisVideoRekognitionIntegrationExampleTest.java` 檔案。刪除類標題後的 `@Ignore` 權利。使用來自 Amazon Kinesis 和 Amazon Rekognition 資源的資訊填入資料欄位。如需詳細資訊，請參閱 [設定您的 Amazon Rekognition Video 和 Amazon Kinesis 資源](setting-up-your-amazon-rekognition-streaming-video-resources.md)。如果您要將影片串流至 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 整合範例測試
<a name="step-3-run-kinesis-video-rekognition-example-test"></a>

 如果您要串流到 Kinesis 影片串流，請確保 Kinesis 影片串流正在接收媒體輸入，並在執行 Amazon Rekognition Video 串流處理器的情況下開始分析串流。如需詳細資訊，請參閱 [Amazon Rekognition Video 串流處理器操作概觀](streaming-video.md#using-rekognition-video-stream-processor)。執行該 `KinesisVideoRekognitionIntegrationExampleTest` 類作為一個 JUnit 測試。短暫的延遲後，會開啟一個新視窗，其中包含 Kinesis 影片串流中的影片，並在偵測到的人臉上繪製邊框。

**注意**  
 此範例中使用的集合中的人臉必須具有以此格式指定的外部影像 ID (檔案名稱)，才能讓邊界方框標籤顯示有意義的文字：PersonName1 (受信任)、PersonName2 (入侵)、PersonName3 (中立)等。這些標籤也可以進行顏色編碼，並且可以在 FaceType.java 檔案中進行自訂。