[Identity] Project Orion - #13176
Conversation
|
Diffuse output: APKMANIFESTDEX |
This reverts commit 5b09f79.
# Conflicts: # identity/api/identity.api
| val hostingAppColors = (themeParams.colors ?: MaterialTheme.colors).let { colors -> | ||
| brandColor?.let { colors.copy(primary = Color(it)) } ?: colors | ||
| } |
There was a problem hiding this comment.
This may not be 100% consistent with how the buttons appear on iOS because the text is always white there while here we keep and rely on the main theme onPrimary I think.
This is actually a broader question for both platforms: is it ok that we are customizing just the main background colors with the risk that the texts may not be accessible/readable because of the lack of contrast? e.g white text on yellow bg
| .put(FACE_LANDMARKS, faceLandmarks().firstOrNull().landmarksToJsonArray()) | ||
| .put( | ||
| FACIAL_TRANSFORMATION_MATRIXES, | ||
| facialTransformationMatrixes().orElse(emptyList()).toMatrixJsonArray() | ||
| ) |
There was a problem hiding this comment.
iOS only encodes categories, I don't think the other two fields are read anywhere else here so we can probably save some encoding compute
| defaultConfig { | ||
| minSdkVersion 24 | ||
| } |
There was a problem hiding this comment.
I believe this is needed for supporting mediapipe, will be a breaking change to mention?
| fun VerificationPage.enable3DFaceCapture(): Boolean = | ||
| selfieCapture?.enable3DFaceCapture() == true || has3DFaceCaptureExperiment() |
There was a problem hiding this comment.
this is the counterpart of the iOS comment where the enabling logic is not matching
| val boundingBox = landmarks.boundingBox() | ||
| FaceDetectorOutput( | ||
| boundingBox = boundingBox, | ||
| resultScore = MEDIA_PIPE_FACE_SCORE, |
There was a problem hiding this comment.
MEDIA_PIPE_FACE_SCORE ends up being hardcoded to 1, just making sure this is expected
Progress on #13048
Android counterpart to stripe/stripe-ios#6523.
This started as a pass on the selfie capture UX but has gotten a lot bigger since the original version
It now includes most of the actual Orion / 3D selfie capture flow on Android, including the updated warmup and camera UI, MediaPipe face pose detection, ordered left and right capture, server driven gating, uploads, and the additional API data
updates the selfie warmup and overall capture flow
AllowandDeclineactions for training consentGreat! Checking your images....with an activity indicator over that imageHaving Trouble?available during capture and preserves the fallback URL behavioradds the new oval capture guide from the mockups
updates all of the live capture states and copy
Place your face within the frameHold still...Captured frontTurn head rightCaptured rightTurn head leftCaptured leftGreat! Checking your images....adds the full front and side-pose capture sequence
num_samplesandsample_intervalfor front capturefollows the server-provided pose order
pose_sequencefrom the selfie static contentleftandrightentries in exactly the order returned by the APIadds the capture sound and haptic feedback
selfie_capture_confirmed.wavasset as iOSadds the MediaPipe face scanner
face_landmarker.taskkeeps the 3D and legacy model paths mutually exclusive
model_type=faceandstage=media_pipe_detectormakes 3D enablement server driven
experimentsarrayidprod_3d_face_capture_mobileexperimentpose_sequencecontains a side pose or that experiment is presentnull, so it is currently offadds the preloaded experiment exposure behavior
event_nameto match the analytic eventevent_metadatavalue to match the analytic metadatascreen_presentedevent matchesupdates the selfie uploads
left_high_res_imageandright_high_res_imagenum_framesas the total number of sampled front framesadds the additional frame data expected by the API
best_frame_data,first_frame_data, andlast_frame_dataleft_frame_dataandright_frame_datafor captured 3D sidesbboxvalueskeeps the landmark payload within the server limit
includes the Android-specific plumbing needed for this
com.google.mediapipe:tasks-visionbrandColorconfiguration for the native flow's primary actionsadds and updates coverage around the new behavior