处理脸部青黄问题
This commit is contained in:
1 parent
955419e110
commit
634590e6d4
2 files changed
+3
-3
No files matched your search
@@ -1147,13 +1147,13 @@ bool MeshTexture::ListCameraFaces(FaceDataViewArr& facesDatas, float fOutlierThr
|
|||||||
const Pixel8U& pixel = imageData.image(j, i);
|
const Pixel8U& pixel = imageData.image(j, i);
|
||||||
// 假设是8位图像,RGB三个通道任一超过250即视为过曝
|
// 假设是8位图像,RGB三个通道任一超过250即视为过曝
|
||||||
if (pixel.r > 250 || pixel.g > 250 || pixel.b > 250) {
|
if (pixel.r > 250 || pixel.g > 250 || pixel.b > 250) {
|
||||||
// continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
float brightnessPerceptual = (0.299f * pixel.r + 0.587f * pixel.g + 0.114f * pixel.b) / 255.0f;
|
float brightnessPerceptual = (0.299f * pixel.r + 0.587f * pixel.g + 0.114f * pixel.b) / 255.0f;
|
||||||
// printf("brightnessPerceptual=%f\n", brightnessPerceptual);
|
// printf("brightnessPerceptual=%f\n", brightnessPerceptual);
|
||||||
|
|
||||||
if (brightnessPerceptual>0.95f)
|
if (brightnessPerceptual>0.8f)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// if (!(scene.mesh.invalidFacesRelative.data.contains(idxFace) && scene.is_face_visible_relative(idxFace)))
|
// if (!(scene.mesh.invalidFacesRelative.data.contains(idxFace) && scene.is_face_visible_relative(idxFace)))
|
||||||
|
|||||||
@@ -1353,7 +1353,7 @@ class ModelProcessor:
|
|||||||
face_visible = v0_visible | v1_visible | v2_visible
|
face_visible = v0_visible | v1_visible | v2_visible
|
||||||
|
|
||||||
# 使用与CPU版本相同的后续处理
|
# 使用与CPU版本相同的后续处理
|
||||||
shrunk_visibility = self._shrink_face_visibility(face_visible.cpu().numpy(), 6)
|
shrunk_visibility = self._shrink_face_visibility(face_visible.cpu().numpy(), 10)
|
||||||
expanded_visibility = self._expand_face_visibility(face_visible.cpu().numpy(), 30)
|
expanded_visibility = self._expand_face_visibility(face_visible.cpu().numpy(), 30)
|
||||||
shrunk_visibility2 = self._shrink_face_visibility(face_visible.cpu().numpy(), 50)
|
shrunk_visibility2 = self._shrink_face_visibility(face_visible.cpu().numpy(), 50)
|
||||||
expanded_edge = expanded_visibility & ~shrunk_visibility2
|
expanded_edge = expanded_visibility & ~shrunk_visibility2
|
||||||
|
|||||||
Reference in new issue
Block a user