@@ -30,7 +30,6 @@ namespace depthMap {
3030 _sgmNormalMap_dmp(queue),
3131 _normalMap_dmp(queue),
3232 _volumeRefineSim_dmp(queue),
33- _optTmpDepthMap_dmp(queue),
3433 _optImgVariance_dmp(queue),
3534 _queue(queue)
3635{
@@ -64,42 +63,7 @@ namespace depthMap {
6463
6564 // allocate depth/sim map optimization buffers
6665 if (_refineParams.useColorOptimization )
67- {
68- allocationSuccess &= _optTmpDepthMap_dmp.allocate (depthSimMapDim);
6966 allocationSuccess &= _optImgVariance_dmp.allocate (depthSimMapDim);
70- }
71- }
72-
73- double Refine::getDeviceMemoryConsumption () const
74- {
75- size_t bytes = 0 ;
76-
77- bytes += _sgmDepthPixSizeMap_dmp.getBytesPadded ();
78- bytes += _refinedDepthSimMap_dmp.getBytesPadded ();
79- bytes += _optimizedDepthSimMap_dmp.getBytesPadded ();
80- bytes += _sgmNormalMap_dmp.getBytesPadded ();
81- bytes += _normalMap_dmp.getBytesPadded ();
82- bytes += _volumeRefineSim_dmp.getBytesPadded ();
83- bytes += _optTmpDepthMap_dmp.getBytesPadded ();
84- bytes += _optImgVariance_dmp.getBytesPadded ();
85-
86- return (double (bytes) / (1024.0 * 1024.0 ));
87- }
88-
89- double Refine::getDeviceMemoryConsumptionUnpadded () const
90- {
91- size_t bytes = 0 ;
92-
93- bytes += _sgmDepthPixSizeMap_dmp.getBytesUnpadded ();
94- bytes += _refinedDepthSimMap_dmp.getBytesUnpadded ();
95- bytes += _optimizedDepthSimMap_dmp.getBytesUnpadded ();
96- bytes += _sgmNormalMap_dmp.getBytesUnpadded ();
97- bytes += _normalMap_dmp.getBytesUnpadded ();
98- bytes += _volumeRefineSim_dmp.getBytesUnpadded ();
99- bytes += _optTmpDepthMap_dmp.getBytesUnpadded ();
100- bytes += _optImgVariance_dmp.getBytesUnpadded ();
101-
102- return (double (bytes) / (1024.0 * 1024.0 ));
10367}
10468
10569sycl::event Refine::refineRc (const Tile& tile,
@@ -206,7 +170,7 @@ sycl::event Refine::refineAndFuseDepthSimMap(const Tile& tile, sycl::event prere
206170
207171 // initialize the similarity volume at 0
208172 // each tc filtered and inverted similarity value will be summed in this volume
209- prerequisite = sycl_volumeInitialize (_volumeRefineSim_dmp, TSimRefine (0 .f ), _queue, prerequisite);
173+ prerequisite = sycl_volumeInitialize (_volumeRefineSim_dmp, TSimRefine (0 .f ), prerequisite);
210174
211175 // get device cache instance
212176 DeviceCache& deviceCache = DeviceCache::getInstance ();
@@ -234,37 +198,20 @@ sycl::event Refine::refineAndFuseDepthSimMap(const Tile& tile, sycl::event prere
234198 << " \t - tc: " << tc << " (" << (tci + 1 ) << " /" << tile.refineTCams .size () << " )" << std::endl
235199 << " \t - tile range x: [" << downscaledRoi.x .begin << " - " << downscaledRoi.x .end << " ]" << std::endl
236200 << " \t - tile range y: [" << downscaledRoi.y .begin << " - " << downscaledRoi.y .end << " ]" << std::endl);
237- if (_refineParams.useSgmNormalMap )
238- {
239- prerequisite = sycl_volumeRefineSimilarityNormal (
240- _volumeRefineSim_dmp,
241- _sgmDepthPixSizeMap_dmp,
242- _sgmNormalMap_dmp,
243- rcParams,
244- tcParams,
245- rcDeviceMipmapImage,
246- tcDeviceMipmapImage,
247- _refineParams,
248- depthRange,
249- downscaledRoi,
250- _queue,
251- prerequisite);
252- }
253- else
254- {
255- prerequisite = sycl_volumeRefineSimilarityNoNormal (
256- _volumeRefineSim_dmp,
257- _sgmDepthPixSizeMap_dmp,
258- rcParams,
259- tcParams,
260- rcDeviceMipmapImage,
261- tcDeviceMipmapImage,
262- _refineParams,
263- depthRange,
264- downscaledRoi,
265- _queue,
266- prerequisite);
267- }
201+
202+ prerequisite = sycl_volumeRefineSimilarity (
203+ _volumeRefineSim_dmp,
204+ _sgmDepthPixSizeMap_dmp,
205+ _refineParams.useSgmNormalMap ? &_sgmNormalMap_dmp : nullptr ,
206+ rcParams,
207+ tcParams,
208+ rcDeviceMipmapImage,
209+ tcDeviceMipmapImage,
210+ _refineParams,
211+ depthRange,
212+ downscaledRoi,
213+ _queue,
214+ prerequisite);
268215 }
269216
270217 // export intermediate volume information (if requested by user)
@@ -302,7 +249,6 @@ sycl::event Refine::optimizeDepthSimMap(const Tile& tile, sycl::event prerequisi
302249 sycl::event gradientDescent = sycl_depthSimMapOptimizeGradientDescent (
303250 _optimizedDepthSimMap_dmp, // output depth/sim map optimized
304251 _optImgVariance_dmp, // image variance buffer pre-allocate
305- _optTmpDepthMap_dmp, // temporary depth map buffer pre-allocate
306252 _sgmDepthPixSizeMap_dmp, // input SGM upscaled depth/pixSize map
307253 _refinedDepthSimMap_dmp, // input refined and fused depth/sim map
308254 camParams,
@@ -328,7 +274,7 @@ void Refine::computeAndWriteNormalMap(const Tile& tile, const SyclDeviceMemoryPi
328274 ALICEVISION_LOG_INFO (tile << " Refine compute normal map of view id: " << _mp.getViewId (tile.rc ) << " , rc: " << tile.rc << " (" << (tile.rc + 1 )
329275 << " / " << _mp.ncams << " )." );
330276
331- sycl_depthSimMapComputeNormal (_normalMap_dmp, in_depthSimMap_dmp, camParams, _refineParams.stepXY , downscaledRoi, _queue, prerequisite).wait ();
277+ sycl_depthMapComputeNormal (_normalMap_dmp, in_depthSimMap_dmp, camParams, _refineParams.stepXY , downscaledRoi, _queue, prerequisite).wait ();
332278
333279 writeNormalMap (tile.rc , _mp, _tileParams, tile.roi , _normalMap_dmp, _queue, _refineParams.scale , _refineParams.stepXY , name);
334280}
0 commit comments