diff --git a/libs/MVS/SceneTexture.cpp b/libs/MVS/SceneTexture.cpp index 39e40cf..d942278 100644 --- a/libs/MVS/SceneTexture.cpp +++ b/libs/MVS/SceneTexture.cpp @@ -6807,13 +6807,12 @@ bool MeshTexture::CreateVirtualFaces65(FaceDataViewArr& facesDatas, FaceDataView } // 动态调整 kMaxViews - int kMaxViews = 12; + int kMaxViews = 32; if (highScoreCount1 >= 1) { - kMaxViews = 2; // 高分视图多 + kMaxViews = 5; // 高分视图多 } else if (highScoreCount2 >= 3) { - kMaxViews = 5; + kMaxViews = 12; } - for (int i = 0; i < kMaxViews && i < scores.size(); ++i) { int index = scores[i].viewIdx; float score = scores[i].score; @@ -6832,7 +6831,7 @@ bool MeshTexture::CreateVirtualFaces65(FaceDataViewArr& facesDatas, FaceDataView if (viewData.faceToIndexMap.find(virtualFaceCenterFaceID) == viewData.faceToIndexMap.end()) continue; - if (score < 0.6f) + if (score < 0.4f) continue; filteredCams.push_back(index); @@ -9760,7 +9759,7 @@ bool MeshTexture::FaceViewSelection3( unsigned minCommonCameras, float fOutlierT // CreateVirtualFaces6(facesDatas, virtualFacesDatas, virtualFaces, isVirtualFace, minCommonCameras); // CreateVirtualFaces61(facesDatas, virtualFacesDatas, virtualFaces, isVirtualFace, minCommonCameras); // CreateVirtualFaces62(facesDatas, virtualFacesDatas, virtualFaces, isVirtualFace, minCommonCameras); - CreateVirtualFaces64(facesDatas, virtualFacesDatas, virtualFaces, isVirtualFace, minCommonCameras); + CreateVirtualFaces65(facesDatas, virtualFacesDatas, virtualFaces, isVirtualFace, minCommonCameras); TD_TIMER_STARTD(); // CreateVirtualFaces7(facesDatas, virtualFacesDatas, virtualFaces, isVirtualFace, minCommonCameras); DEBUG_EXTRA("CreateVirtualFaces completed: %s", TD_TIMER_GET_FMT().c_str());