Changeset 606 in 3DVCSoftware
- Timestamp:
- 31 Aug 2013, 22:32:03 (11 years ago)
- Location:
- branches/HTM-DEV-2.0-Renderer-Fix/source
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-DEV-2.0-Renderer-Fix/source/App/TAppEncoder/TAppEncTop.cpp
r542 r606 768 768 printRateSummary(); 769 769 770 #if H_3D_REN_MAX_DEV_OUT 771 Double dMaxDispDiff = m_cCameraData.getMaxShiftDeviation(); 772 773 if ( !(dMaxDispDiff < 0) ) 774 { 775 printf("\n Max. possible shift error: %12.3f samples.\n", dMaxDispDiff ); 776 } 777 #endif 778 770 779 return; 771 780 } -
branches/HTM-DEV-2.0-Renderer-Fix/source/App/TAppRenderer/TAppRendererTop.cpp
r446 r606 480 480 AOT(true); 481 481 } 482 483 #if H_3D_REN_MAX_DEV_OUT 484 Double dMaxDispDiff = m_cCameraData.getMaxShiftDeviation(); 485 486 if ( !(dMaxDispDiff < 0) ) 487 { 488 printf("\n Max. possible shift error: %12.3f samples.\n", dMaxDispDiff ); 489 } 490 #endif 482 491 } 483 492 -
branches/HTM-DEV-2.0-Renderer-Fix/source/Lib/TAppCommon/TAppComCamPara.cpp
r542 r606 616 616 { 617 617 UInt uiFoundLine = -1; 618 #if H_3D_FIX_REN_WARNING 619 if ( !xGetCameraDataRow( iView, uiFrame, uiFoundLine ) && xIsIn( m_aiSortedBaseViews, iView )) 620 #else 618 621 if ( !xGetCameraDataRow( iView, uiFrame, uiFoundLine ) ) 622 #endif 619 623 { 620 624 AOT( m_aadCameraParameters[ uiFoundLine ].size() < 6 ); … … 632 636 Int iDummy; 633 637 638 #if H_3D_FIX_REN_WARNING 639 if( !xGetLeftRightView( iView, m_aiSortedBaseViews, iLeftView, iRightView, iDummy, iDummy ) || 640 #else 634 641 if( !xGetLeftRightView( iView, m_aiViewsInCfgFile, iLeftView, iRightView, iDummy, iDummy ) || 642 #endif 635 643 xGetCameraDataRow( iLeftView, uiFrame, uiLeftViewLine ) || 636 644 xGetCameraDataRow( iRightView, uiFrame, uiRightViewLine ) 637 645 ) 638 646 { 647 #if H_3D_FIX_REN_WARNING 648 std::cerr << "No left or no right base view next to view " << (Double)iView / m_dViewNumPrec << " for Frame " << uiFrame << " given in CameraParameterFile" << std::endl; 649 #else 639 650 std::cerr << "No Left or no Right View next to View " << (Double)iView / m_dViewNumPrec << " for Frame " << uiFrame << " given in CameraParameterFile" << std::endl; 651 #endif 640 652 AOT(true); 641 653 exit( EXIT_FAILURE ); … … 892 904 893 905 // maximum deviation 906 #if H_3D_REN_MAX_DEV_OUT 907 m_dMaxShiftDeviation = std::max( m_dMaxShiftDeviation, fabs( Double( (Int) iShiftLuma ) - dShiftLuma ) / Double( 1 << m_iLog2Precision ) ); 908 #endif 894 909 dMaxDispDev = std::max( dMaxDispDev, fabs( Double( (Int) iTestScale ) - dShiftLuma * Double( 1 << iLog2DivLuma ) ) / Double( 1 << iLog2DivLuma ) ); 895 910 dMaxRndDispDvL = std::max( dMaxRndDispDvL, fabs( Double( (Int) iShiftLuma ) - dShiftLuma ) ); … … 1026 1041 m_bCamParsCodedPrecSet = false; 1027 1042 1043 #if H_3D_REN_MAX_DEV_OUT 1044 m_dMaxShiftDeviation = -1; 1045 #endif 1028 1046 1029 1047 } … … 1334 1352 } 1335 1353 } 1354 #if H_3D_FIX_REN_WARNING 1355 Bool bIgnoreFirst = true; 1356 for( UInt uiERView = 0; uiERView < m_aiSynthViews.size() && !m_bSetupFromCoded; uiERView++ ) 1357 { 1358 if ( xIsIn(m_aiViewsInCfgFile, m_aiSynthViews[ uiERView ] ) ) 1359 { 1360 if ( bIgnoreFirst ) 1361 { 1362 std::cout << "Ignoring CameraParameterFile entries for virtual view(s): " ; 1363 //GT: Integer precision virtual view camera parameters are always interpolated from coded views camera parameters. 1364 bIgnoreFirst = false; 1365 } 1366 std::cout << (Double)m_aiSynthViews[ uiERView ] / m_dViewNumPrec << " " ; 1367 } 1368 } 1369 if ( !bIgnoreFirst ) 1370 { 1371 std::cout << std::endl; 1372 } 1373 #endif 1336 1374 1337 1375 Bool bInterpolateFirst = true; … … 1352 1390 if ( bInterpolateFirst ) 1353 1391 { 1392 #if H_3D_FIX_REN_WARNING 1393 std::cout << "Interpolating camera parameters for virtual view(s): " ; 1394 #else 1354 1395 std::cout << "Interpolating Camera Parameters for View(s) " ; 1396 #endif 1355 1397 bInterpolateFirst = false; 1356 1398 } … … 1456 1498 } 1457 1499 1500 #if H_3D_FIX_REN_WARNING 1501 Bool 1502 TAppComCamPara::xIsIn( std::vector<Int>& rVec, Int iElem) 1503 { 1504 Bool bFound = false; 1505 for (Int idx = 0; idx < rVec.size() && !bFound; idx++) 1506 { 1507 bFound = bFound || rVec[idx] == iElem; 1508 } 1509 return bFound; 1510 } 1511 #endif 1512 1458 1513 Int TAppComCamPara::getRelDistLeft( Int iSynthViewIdx, Int iLeftViewIdx, Int iRightViewIdx ) 1459 1514 { -
branches/HTM-DEV-2.0-Renderer-Fix/source/Lib/TLibCommon/TypeDef.h
r543 r606 135 135 // FIX_SDC_ENC_RD_WVSO_D0163 136 136 // MTK_SAMPLE_BASED_SDC_D0110 137 #define H_3D_FIX_REN 1 // fix of erroneous inpainting for renderer 138 #define H_3D_FIX_REN_WARNING 1 // fix of warning related to camera parameter precision 139 #define H_3D_REN_MAX_DEV_OUT 0 // Output maximal possible shift deviation 137 140 138 141 #endif -
branches/HTM-DEV-2.0-Renderer-Fix/source/Lib/TLibRenderer/TRenTop.cpp
r499 r606 1033 1033 for ( ; iInterPolPos <= xCeil (iShiftedPos ) -1 ; iInterPolPos++) 1034 1034 { 1035 #if H_3D_FIX_REN 1036 if ( ( iInterPolPos >= 0 ) && ( iInterPolPos < iOutputWidth ) ) 1037 { 1038 if( pcFilledData[iInterPolPos] == REN_IS_HOLE ) 1039 { 1040 Int iNextPos = std::min(iInputWidth-1,iPosX + iStep); 1041 Int iPosXBG = ( std::abs( pcDepthData[iNextPos] - pcDepthData[iPosX] ) > 5 ) ? iPosX : iNextPos; 1042 for( UInt uiCurPlane = 0; uiCurPlane < uiNumberOfPlanes; uiCurPlane++) 1043 { 1044 apcOutputData[uiCurPlane][iInterPolPos] = apcInputData[uiCurPlane][iPosXBG]; 1045 } 1046 } 1047 else 1048 { 1049 pcFilledData[iInterPolPos] = REN_IS_HOLE + 1; 1050 } 1051 } 1052 #else 1035 1053 for( UInt uiCurPlane = 0; uiCurPlane < uiNumberOfPlanes; uiCurPlane++) 1036 1054 { … … 1040 1058 } 1041 1059 } 1060 #endif 1042 1061 } 1043 1062 } … … 1285 1304 else 1286 1305 { 1306 #if H_3D_FIX_REN 1307 pcAlphaData[iXPos] = pcFilledData[iXPos]; 1308 #else 1287 1309 pcAlphaData[iXPos] = REN_IS_FILLED; 1310 #endif 1288 1311 } 1289 1312 }
Note: See TracChangeset for help on using the changeset viewer.