Для вашего регулярного выражения нужны регулярные выражения
. В вашем квадрате квадратные скобки интерпретируются как разделители регулярных выражений, а символы после разделителя замыкания являются модификаторами регулярного выражения. Таким образом, *
рассматривался как модификатор, но он не является допустимым модификатором.
Подробнее см. Разделители на php.net
Microsoft Face API
является услугой SaaS: вы не размещаете какие-либо ресурсы, используемые API в вашей собственной подписке. Итак, главное: нет данных, сохраненных в вашей базе данных Azure.
У вас не будет прямого доступа к ресурсам, на которых размещены метаданные, используемые для сохраненных лиц, все, что вы можете получить, - это данные, доступные через API: https://westus.dev.cognitive.microsoft.com/ docs / services / 563879b61984550e40cbbe8d / operations / 563879b61984550f30395236
Поэтому, если вы хотите получить ориентиры лица, вы можете получить их только во время вызова метода Detect
, который имеет следующие свойства: [1111 ]
Массив из 27 точечных ориентиров лица, указывающих на важные положения компонентов лица. Чтобы вернуть это, требуется, чтобы параметр "returnFaceLandmarks" имел значение true.
blockquote>В результате вы получите следующие предметы:
"faceLandmarks": { "pupilLeft": { "x": 412.7, "y": 78.4 }, "pupilRight": { "x": 446.8, "y": 74.2 }, "noseTip": { "x": 437.7, "y": 92.4 }, "mouthLeft": { "x": 417.8, "y": 114.4 }, "mouthRight": { "x": 451.3, "y": 109.3 }, "eyebrowLeftOuter": { "x": 397.9, "y": 78.5 }, "eyebrowLeftInner": { "x": 425.4, "y": 70.5 }, "eyeLeftOuter": { "x": 406.7, "y": 80.6 }, "eyeLeftTop": { "x": 412.2, "y": 76.2 }, "eyeLeftBottom": { "x": 413.0, "y": 80.1 }, "eyeLeftInner": { "x": 418.9, "y": 78.0 }, "eyebrowRightInner": { "x": 4.8, "y": 69.7 }, "eyebrowRightOuter": { "x": 5.5, "y": 68.5 }, "eyeRightInner": { "x": 441.5, "y": 75.0 }, "eyeRightTop": { "x": 446.4, "y": 71.7 }, "eyeRightBottom": { "x": 447.0, "y": 75.3 }, "eyeRightOuter": { "x": 451.7, "y": 73.4 }, "noseRootLeft": { "x": 428.0, "y": 77.1 }, "noseRootRight": { "x": 435.8, "y": 75.6 }, "noseLeftAlarTop": { "x": 428.3, "y": 89.7 }, "noseRightAlarTop": { "x": 442.2, "y": 87.0 }, "noseLeftAlarOutTip": { "x": 424.3, "y": 96.4 }, "noseRightAlarOutTip": { "x": 446.6, "y": 92.5 }, "upperLipTop": { "x": 437.6, "y": 105.9 }, "upperLipBottom": { "x": 437.6, "y": 108.2 }, "underLipTop": { "x": 436.8, "y": 111.4 }, "underLipBottom": { "x": 437.3, "y": 114.5 } },
Если вам понадобится использовать эти детали позже, если вы сохраните лицо, я могу предложить 2 варианта:
- размещают в вашей подписке базу данных, в которой вы будете хранить эти параметры и persistedFaceId
- или передаете эти значения в поле
userData
, когда сохраняете значения. Это поле:User-specified data about the face list for any purpose. The maximum length is 1KB
. Затем вы можете получить эти поля позже, используя метод Get