本文提供鄰近感測器專屬的數據欄位相關信息。
下表顯示數據欄位。 如需類型數據行中所顯示類型的詳細資訊,請參閱 PROPVARIANT 結構。
屬性索引鍵 | 類型 | 必要/選用 | 描述 |
---|---|---|---|
PKEY_SensorData_ProximityDetection | VT_BOOL | 必要 | 指示對象位於感測器的鄰近範圍內。 |
PKEY_SensorData_ProximityDistanceMillimeters | VT_UI4 | 選擇性 | 與偵測到對象的距離,以公厘為單位。 |
PKEY_SensorData_HumanPresence_DetectionDistance_Threshold | VT_R4 | 選擇性 | 以公厘為單位的距離偵測臨界值。 感測器只會報告位於此距離內的物件。 |
PKEY_SensorData_HumanPresence_AttentionDetection | VT_BOOL | 選擇性 | 指出使用者的注意狀態。 |
PKEY_Sensor_Proximity_SensorCapabilities | VT_UI4 | 選擇性 | 包含PROXIMITY_SENSOR_CAPABILITIES列舉所定義之功能旗標的點陣圖。 |
DEVPKEY_Sensor_HumanPresence_MaxDetectablePersonsCount | VT_UI4 | 選擇性 | 感測器能夠同時偵測的最大人員數目。 對於支援多人員偵測的感測器,這個屬性是必要的。 |
PKEY_SensorData_HumanPresence_DetectedPersonsCount | VT_UI4 | 選擇性 | 目前感測器讀數所報告的偵測到人員總數。 下方的向量屬性會提供詳細的個別數據,每個元素都會描述一個人。 向量屬性中的專案會依距離排序,從最接近裝置的人員開始。 當支援多重人員偵測功能時,感測器讀數中必須有這個屬性。 |
PKEY_SensorData_HumanPresence_DistanceMillimetersVector | VT_VECTOR|VT_UI4 | 選擇性 | 每個人與裝置的距離以公厘為單位,從最接近裝置的人員開始。 當支援距離偵測和多人偵測功能時,感測器讀數中必須有此屬性。 Max(UI4) 值被視為未知。 |
PKEY_SensorData_HumanPresence_AttentionVector | VT_VECTOR|VT_BOOL | 選擇性 | 每個人的參與狀態為布爾值,從最接近裝置的人員開始。 支援參與偵測和多人員偵測功能時,感測器讀數中必須有此屬性。 VARIANT_TRUE 和 VARIANT_FALSE 以外的值會被視為未知。 |
PKEY_SensorData_HumanPresence_HeadAzimuthVector | VT_VECTOR|VT_R4 | 選擇性 | 每個人的頭部與裝置的方位,從最接近裝置的人員開始。 當支援頭部輔助偵測和多人偵測功能時,感測器讀數中必須有這個屬性。 有效範圍 [-90, 90] 以外的值會被視為未知。 |
PKEY_SensorData_HumanPresence_HeadAltitudeVector | VT_VECTOR|VT_R4 | 選擇性 | 每個人對裝置的頭部高度,以度為單位,從最接近裝置的人員開始。 當支持頭部高度偵測和多人偵測功能時,感測器讀數中必須有這個屬性。 有效範圍 [-90, 90] 以外的值會被視為未知。 |
PKEY_SensorData_HumanPresence_HeadRollVector | VT_VECTOR|VT_R4 | 選擇性 | 每個人的頭部會以度為單位滾動,從最接近裝置的人員開始。 當支持頭部滾動偵測和多人偵測功能時,感測器讀數中必須有這個屬性。 有效範圍 [0, 360] 以外的值會被視為未知。 |
PKEY_SensorData_HumanPresence_HeadPitchVector | VT_VECTOR|VT_R4 | 選擇性 | 每個人的頭部傾斜度,從最接近裝置的人開始。 當支持頭部間距偵測和多人偵測功能時,感測器讀數中必須有這個屬性。 有效範圍 [-180, 180] 以外的值會被視為未知。 |
PKEY_SensorData_HumanPresence_HeadYawVector | VT_VECTOR|VT_R4 | 選擇性 | 每個人的頭部偏向度,從最接近裝置的人開始。 當支持頭部偏轉偵測和多人偵測功能時,感測器讀數中必須有這個屬性。 有效範圍 [-90, 90] 以外的值會被視為未知。 |
PKEY_SensorData_HumanPresence_PersonIdVector | VT_VECTOR|VT_UI4 | 選擇性 | 每個人的臉部相互關聯標識碼,從最接近裝置的人員開始。 臉部相互關聯標識碼是目前會話內人員的唯一標識符。 會話是特定的實作。 例如,可能是感測器目前的使用中電源狀態迴圈。 此標識碼的目的是在感測器檢視範圍內移動時,彼此區別。 當臉部識別和多重人員偵測功能受到支援時,感測器讀數中必須有此屬性。 Max(UI4) 值被視為未知。 |
PKEY_SensorData_HumanPresence_HeadAzimuth | VT_R4 | 選擇性 | 以度為單位,頭部向裝置的正向。 此屬性僅用於敏感度閾值。 透過對應的向量屬性報告感測器數據。 |
PKEY_SensorData_HumanPresence_HeadAltitude | VT_R4 | 選擇性 | 頭部高度到裝置,以度為單位。 此屬性僅用於敏感度閾值。 透過對應的向量屬性報告感測器數據。 |
PKEY_SensorData_HumanPresence_HeadRoll | VT_R4 | 選擇性 | 頭卷度。 此屬性僅用於敏感度閾值。 透過對應的向量屬性報告感測器數據。 |
PKEY_SensorData_HumanPresence_HeadPitch | VT_R4 | 選擇性 | 頭部傾斜度。 此屬性僅用於敏感度閾值。 透過對應的向量屬性報告感測器數據。 |
PKEY_SensorData_HumanPresence_HeadYaw | VT_R4 | 選擇性 | 頭部偏向度。 此屬性僅用於敏感度閾值。 透過對應的向量屬性報告感測器數據。 |
備註
如果感測器支援PKEY_SensorData_ProximityDistanceMillimeters數據欄位,則為了回應PKEY_SensorData_ProximityDistanceMillimeters數據欄位的 EvtSensorGetDataFieldProperties 呼叫,感測器必須報告下列數據欄位屬性:
數據欄位屬性 | 類型 | 必要/選用 | 描述 |
---|---|---|---|
PKEY_SensorDataField_RangeMinimum | VT_R4 (float) | 必要 | 表示感測器有效偵測範圍的下邊界(內含)以公厘為單位。 |
PKEY_SensorDataField_RangeMaximum | VT_R4 (float) | 必要 | 表示感測器有效偵測範圍的上限(含)以公厘為單位。 |
注意
有效的偵測範圍是從感測器到物件的直線距離。 此距離會沿著感測器所指向的座標軸進行測量,並包含實際界限。
如果驅動程式無法回報這些數據欄位屬性,應用程式仍然可以透過 WinRT API 偵測鄰近感測器。 不過,這些應用程式不會知道感測器的支援範圍,而且可能決定不使用感測器。
前端位置參數
- X、Y、Z 軸的慣例與用於運動和方向感測器的裝置座標系統相同。
- 軸從裝置畫面的中心開始。
- X 軸位於裝置螢幕的平面中,從使用者面對裝置的角度,向螢幕右側呈正向。
- Y 軸位於螢幕的平面,正向螢幕頂端。
- Z 與螢幕垂直,對面向裝置的使用者呈正向。
- 軸是相對於裝置的固定,不會隨著裝置的旋轉而變更。
- 針對非螢幕型裝置,軸會相對於裝置的前端面板來定義。
- 如果感測器不支援臉部偵測,則 azimuth 和高度的參考點可能會與人員臉部的中心不同,只要在不同的感測器讀數之間保持一致。
- Azimuth 是向量從感測器裝置指向人員臉部中心之向量之 Z 軸與 XZ 投影之間的角度。 範圍 [-90, +90]。 角度值在逆時針旋轉繞 Y 軸時為正數。
- 高度是向量從感測器裝置指向人員臉部中心與其 XZ 投影之間的角度。 範圍 [-90, +90]。 角度值正向 Y 軸的方向。
前端方向參數
- 頭部方向在內建的Tait-Bryan角度中描述,套用在滾動、傾斜、偏向順序中。
- Roll 是繞 Z 軸繞 Z 軸的人頭部逆時針旋轉,以度為單位。 範圍 [0, 360]。 在零位置中,Z 軸會與裝置的 Z 軸平行,並從人員臉部中央指向裝置的點。
- 音調是人員頭部繞 X 軸的逆時針旋轉,以度為單位。 範圍 [-180, 180]。 在零位置中,X 軸會與裝置的 X 軸平行,並從裝置的角度從人員臉部中央向右點。
- Yaw 是繞 Y 軸繞 Y 軸的逆時針旋轉,以度為單位。 範圍 [-90, 90]。 在零位置中,Y 軸與裝置的 Y 軸平行,且從人員臉部中央向上點。