本文介紹人臉人體(facebody)類目下的動作行為識別RecognizeAction的語法及示例。
功能描述
動作行為識別能力可以識別視頻和圖像中的人體動作行為,并返回識別后的行為類別。當前可以識別的行為類別包括:舉手、吃喝、吸煙、打電話、玩手機、趴桌睡覺、跌倒、洗手、拍照。您可以根據系統提供的動作置信度判斷閾值,對識別的動作進行判斷。
動作行為識別適用范圍:- 舉手:手臂伸直高高舉起,手腕高過頭頂。
- 吃喝:吃東西或者喝水。
- 吸煙:將煙點著,真吸煙,畫面中需要能看清煙。
- 打電話:電話或者微信語音,手機必須靠近耳朵或者嘴邊。
- 玩手機:用手機打字、瀏覽手機、看視頻、玩游戲,視頻聊天等玩手機行為,畫面中需要能看清手機。
- 趴桌睡覺:頭趴在桌子上睡覺。
- 跌倒:整個人跌倒在地,身體倒下。
- 洗手:在水龍頭或者盆中洗手。
- 拍照:手機稍微舉起,用手機對著某人或物拍照。
應用場景
- 駕駛員監控系統(DMS):檢測駕駛員是否存在吸煙、吃喝、打電話、玩手機等影響安全駕駛的行為。
- 學習狀況監測:監測學習過程是否存在舉手、玩手機、趴桌子睡覺等行為。
- 公共場所行為監測:監測在博物館、展覽館等公共場所是否存在吸煙、打電話、拍照等不文明行為,以及是否有跌倒這樣的異常情況發生。
- 工作場所監督:監測在工作場所是否存在吃喝、吸煙、打電話、趴桌子睡覺等行為,是否有按要求洗手。
特色優勢
- 覆蓋多種應用場景:支持識別舉手、吃喝、吸煙、打電話、玩手機、睡覺、跌打、洗手、拍照等行為,涵蓋駕駛、學習、泛安防等多種場景。
- 適應多種光照條件:適應在自然光、室內光照、夜晚紅外模式等光照條件下的行為識別。
接入指引
1. 注冊阿里云賬號:打開阿里云官網,在阿里云官網右上角,單擊立即注冊,按照操作提示完成賬號注冊。
2. 開通能力:請確保您已開通人臉人體服務,若未開通服務請立即開通。
3. 創建AccessKey:請確保您已創建AccessKey,如果您使用的是子賬號AccessKey,您需要給子賬號賦予AliyunVIAPIFullAccess權限,具體操作,請參見RAM授權。
4. 在線調試(可選):您可以通過OpenAPI Explorer在線調試能力,查看完整的調用示例代碼及SDK依賴信息,也可以下載完整的工程。
5. 開發接入步驟:
- 在SDK總覽中選擇您要接入使用的SDK語言。
- 在對應語言的SDK文檔中找到AI類目為人臉人體(facebody)的SDK包進行安裝。
- 參考文檔中提供的示例代碼進行適當修改后調用。
6. 示例代碼:該能力常用語言的示例代碼,請參見動作行為識別示例代碼。
7. 客戶端直接調用:該能力常用的客戶端調用方式包括以下幾種。
輸入限制
-
視頻要求:
1. 時長大于2秒,小于5秒。如果輸入視頻時長大于5秒,系統僅返回前5秒的檢測結果。
2. 視頻大小應小于10 MB。
3. 分辨率大于256×256像素,小于等于1280×720像素。
4. 支持一些常見的視頻格式,例如MPEG、AVI、MOV、MP4。
說明 建議為居家攝像頭或近距離監控場景。即攝像頭固定不動,拍攝距離為2米~10米。 -
圖像要求:
1. 幀數4幀,必須是同一個視頻連續2秒均勻抽幀的結果。如果輸入4幀非同一個視頻中的,會導致識別報錯。
2. 分辨率大于256×256像素,小于等于1280×720像素。
3. 支持的格式為JPEG、PNG、BMP、JPG。
4. 可使用URL與Base64編碼字符串混合輸入。
- URL地址中不能包含中文字符。
計費說明
關于動作行為識別的計費方式及報價,請參見計費介紹。
調試
您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。
請求參數
名稱 |
類型 |
是否必選 |
示例值 |
描述 |
Action | String | 是 | RecognizeAction | 系統規定參數。取值:RecognizeAction。 |
Type | Integer | 是 | 0 | 輸入內容類型,包括視頻和圖像兩種類型。
|
VideoUrl | String | 否 | http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/RecognizeAction/RecognizeAction-video1.mp4 | Type為0時需要輸入的視頻URL地址。推薦使用上海地域的OSS鏈接,對于文件在本地或者非上海地域OSS鏈接的情況,請參見文件URL處理。 |
URLList.N.URL | String | 否 | http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/RecognizeAction/1RecognizeAction1.png | Type為1時需要輸入的圖像URL地址,必須輸入4張圖像,且4張圖像建議為兩秒鐘視頻均勻采樣的圖像,分辨率和通道數必須一致。推薦使用上海地域的OSS鏈接,對于文件在本地或者非上海地域OSS鏈接的情況,請參見文件URL處理。 |
URLList.N.imageData | String | 否 | /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgQ**** | 圖像Base64編碼字符串,與URL共存時,URL優先。文件的Base64編碼處理操作,請參見文件Base64處理。 |
VideoData | String | 否 | iVBORw0KGgoAAAANSUhEUgAAAoAAAAHJCAIAAACaEB9NAAEAAElEQVR4nNT9Wb**** | 視頻Base64編碼字符串,與VideoURL共存時,VideoURL優先。文件的Base64編碼處理操作,請參見文件Base64處理。 |
返回數據
名稱 |
類型 |
示例值 |
描述 |
RequestId | String | E9C40AF5-A7F8-49D5-8A0C-B21F15A07F17 | 請求ID。 |
Data | Object | 返回的結果數據內容。 |
|
Elements | Array of Element | 返回的結果元素列表。 |
|
Scores | Array of Float | 0.702967643737793 | 行為類別的置信度。取值范圍0~1,值越大,識別到的動作越準確。系統根據算法,為不同的動作給出判斷的閾值標準,您也可以根據自己的實際情況,對判斷的閾值標準進行調整。
|
Labels | Array of String | 跌倒 | 識別到的行為類別。 |
Boxes | Array of Boxes | 具體動作的坐標框列表。 |
|
Box | Array of Integer | [1119,576,1373,970] | 具體動作的坐標框信息。 |
Timestamp | Integer | 3 | 當前行為在視頻或者圖像中發生的時間戳信息。 |
SDK參考
阿里云視覺AI人臉人體類目下的動作行為識別能力推薦使用SDK調用,支持多種編程語言,調用時請選擇AI類目為人臉人體(facebody)的SDK包,文件參數通過SDK調用可支持本地文件及任意URL,具體可參見SDK總覽。
示例代碼
該能力常用語言的示例代碼,請參見動作行為識別示例代碼。
示例
請求示例
http(s)://facebody.cn-shanghai.aliyuncs.com/?Action=RecognizeAction //更多關于訪問域名(Endpoint)信息,請參見:http://m.bestwisewords.com/document_detail/143103.html
&Type=0
&VideoUrl=http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/RecognizeAction/RecognizeAction-video1.mp4
&URLList=[{"URL":"http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/facebody/RecognizeAction/1RecognizeAction1.png","imageData":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgQ****"}]
&VideoData=iVBORw0KGgoAAAANSUhEUgAAAoAAAAHJCAIAAACaEB9NAAEAAElEQVR4nNT9Wb****
&公共請求參數
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<RequestId>E9C40AF5-A7F8-49D5-8A0C-B21F15A07F17</RequestId>
<Data>
<Elements>
<Timestamp>1</Timestamp>
</Elements>
<Elements>
<Scores>0.702967643737793</Scores>
<Labels>跌倒</Labels>
<Timestamp>3</Timestamp>
<Boxes>
<Box>1119</Box>
<Box>576</Box>
<Box>1373</Box>
<Box>970</Box>
</Boxes>
</Elements>
<Elements>
<Scores>0.7334273457527161</Scores>
<Labels>跌倒</Labels>
<Timestamp>5</Timestamp>
<Boxes>
<Box>1128</Box>
<Box>613</Box>
<Box>1363</Box>
<Box>991</Box>
</Boxes>
</Elements>
</Data>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "E9C40AF5-A7F8-49D5-8A0C-B21F15A07F17",
"Data" : {
"Elements" : [ {
"Timestamp" : 1
}, {
"Scores" : 0.702967643737793,
"Labels" : "跌倒",
"Timestamp" : 3,
"Boxes" : {
"Box" : [ 1119, 576, 1373, 970 ]
}
}, {
"Scores" : 0.7334273457527161,
"Labels" : "跌倒",
"Timestamp" : 5,
"Boxes" : {
"Box" : [ 1128, 613, 1363, 991 ]
}
} ]
}
}
錯誤碼
關于動作行為識別的錯誤碼,詳情請參見常見錯誤碼。
安全聲明
- 請確保上傳的圖片或文件來源符合相應的法律法規。
- 通過體驗調試上傳的臨時文件有效期為1小時,在24小時后會被系統自動清理刪除。