Browse Source

处理脖子偏黄的问题

master
hesuicong 2 weeks ago
parent
commit
4a8e6dedee
  1. 29
      libs/MVS/SceneTexture.cpp

29
libs/MVS/SceneTexture.cpp

@ -3347,7 +3347,7 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA @@ -3347,7 +3347,7 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA
}
//*/
if (validViewsSize<=0)
if (validViewsSize<=0&&false)
{
//*
// int nSize = sortedViews.size(); // (sortedViews.size() > 3) ? 3 : sortedViews.size();
@ -3466,7 +3466,7 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA @@ -3466,7 +3466,7 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA
}
//*/
}
else if (validViewsSize>0&&validViewsSize<=2)
else if (validViewsSize>0&&validViewsSize<=2&&false)
{
/*
virtualFaceData.quality = 0;
@ -3569,21 +3569,31 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA @@ -3569,21 +3569,31 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA
}
else
{
/*
//*
ASSERT(processedFaces > 0);
virtualFaceData.quality /= processedFaces;
// virtualFaceData.quality /= processedFaces;
#if TEXOPT_FACEOUTLIER != TEXOPT_FACEOUTLIER_NA
virtualFaceData.color /= processedFaces;
// virtualFaceData.color /= processedFaces;
#endif
*/
virtualFaceData.quality = 0;
#if TEXOPT_FACEOUTLIER != TEXOPT_FACEOUTLIER_NA
virtualFaceData.color = Point3f::ZERO;
#endif
//*/
/*
// 如果所有视图都被排除,保留原始平均值
if (validIndices.empty()) {
if (validIndices.empty() || validViews.size() <= 0) {
// virtualFaceData.quality = avgQuality;
#if TEXOPT_FACEOUTLIER != TEXOPT_FACEOUTLIER_NA
// virtualFaceData.color = avgColor;
#endif
virtualFaceData.quality = medianQuality;
virtualFaceData.color = medianColor;
// virtualFaceData.quality = medianQuality;
// virtualFaceData.color = medianColor;
virtualFaceData.quality /= processedFaces;
#if TEXOPT_FACEOUTLIER != TEXOPT_FACEOUTLIER_NA
virtualFaceData.color /= processedFaces;
#endif
}
else {
// 使用过滤后的视图重新计算平均值
@ -3600,6 +3610,7 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA @@ -3600,6 +3610,7 @@ bool MeshTexture::CreateVirtualFaces6(FaceDataViewArr& facesDatas, FaceDataViewA
virtualFaceData.quality = totalQuality2 / validIndices.size();
virtualFaceData.color = totalColor2 / validIndices.size();
}
//*/
}
}
else

Loading…
Cancel
Save