我正在尝试使用Google Cloud Video Intelligence API在视频上运行注释。只需一个功能请求(即“ LABEL_DETECTION”,“ SHOT_CHANGE_DETECTION”或“ EXPLICIT_CONTENT_DETECTION”之一)的注释请求,一切正常。但是,当我同时请求带有两个或多个功能的注释时,响应并不总是返回所有请求功能字段。例如,这是我最近使用API explorer发出的请求:
{
"features": [
"EXPLICIT_CONTENT_DETECTION",
"LABEL_DETECTION",
"SHOT_CHANGE_DETECTION"
],
"inputUri": "gs://gccl_dd_01/Video1"
}
我返回的操作ID是:“ us-east1.11264560501473964275”。当我使用此ID运行GET时,我将收到以下响应:
200
{
"name": "us-east1.11264560501473964275",
"metadata": {
"@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoProgress",
"annotationProgress": [
{
"inputUri": "/gccl_dd_01/Video1",
"progressPercent": 100,
"startTime": "2018-08-06T17:13:58.129978Z",
"updateTime": "2018-08-06T17:18:01.274877Z"
},
{
"inputUri": "/gccl_dd_01/Video1",
"progressPercent": 100,
"startTime": "2018-08-06T17:13:58.129978Z",
"updateTime": "2018-08-06T17:14:39.074505Z"
},
{
"inputUri": "/gccl_dd_01/Video1",
"progressPercent": 100,
"startTime": "2018-08-06T17:13:58.129978Z",
"updateTime": "2018-08-06T17:16:23.230536Z"
}
]
},
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoResponse",
"annotationResults": [
{
"inputUri": "/gccl_dd_01/Video1",
"segmentLabelAnnotations": [
...
],
"shotLabelAnnotations": [
...
],
"shotAnnotations": [
...
]
}
]
}
}
响应的done参数设置为true,但没有任何字段包含显式内容的注释。
这个问题在我的新手看来似乎是随机发生的。这些API在某些情况下会返回一个包含所有参数的响应,而在其他情况下则会丢失一个响应。我想知道这里是否缺少任何东西,或者到底是什么导致了这个?
答案 0 :(得分:0)
我仅使用LABEL_DETECTION
,仅EXPLICIT_CONTENT_DETECTION
并使用了其中三个进行了一些测试。
由于我没有使用带有露骨内容的视频,因此仅添加EXPLICIT_CONTENT_DETECTION
时看不到任何特定字段:
{
"name": "europe-west1.462458490043912485",
"metadata": {
"@type": "type.googleapis.com/google.cloud.videointelligence.v1.AnnotateVideoProgress",
"annotationProgress": [
{
"inputUri": "/cloud-ml-sandbox/video/chicago.mp4",
"startTime": "2018-08-07T14:18:40.086713Z",
"updateTime": "2018-08-07T14:18:40.230351Z"
}
]
}
}
请问您可以共享一个特定的视频样本,request.json
和两个不同的输出吗?