Commit 744f4b16 authored by Roman Donchenko's avatar Roman Donchenko Committed by OpenCV Buildbot

Merge pull request #1565 from SpecLad:cmake-new-ptr

parents cca2e5d8 32630dbf
...@@ -270,13 +270,13 @@ private: ...@@ -270,13 +270,13 @@ private:
virtual inline void pushDepthMetaData( xn::DepthMetaData& depthMetaData ) virtual inline void pushDepthMetaData( xn::DepthMetaData& depthMetaData )
{ {
cv::Ptr<xn::DepthMetaData> depthPtr = new xn::DepthMetaData; cv::Ptr<xn::DepthMetaData> depthPtr = cv::makePtr<xn::DepthMetaData>();
depthPtr->CopyFrom(depthMetaData); depthPtr->CopyFrom(depthMetaData);
depthQueue.push(depthPtr); depthQueue.push(depthPtr);
} }
virtual inline void pushImageMetaData( xn::ImageMetaData& imageMetaData ) virtual inline void pushImageMetaData( xn::ImageMetaData& imageMetaData )
{ {
cv::Ptr<xn::ImageMetaData> imagePtr = new xn::ImageMetaData; cv::Ptr<xn::ImageMetaData> imagePtr = cv::makePtr<xn::ImageMetaData>();
imagePtr->CopyFrom(imageMetaData); imagePtr->CopyFrom(imageMetaData);
imageQueue.push(imagePtr); imageQueue.push(imagePtr);
} }
...@@ -329,7 +329,7 @@ private: ...@@ -329,7 +329,7 @@ private:
virtual inline void pushDepthMetaData( xn::DepthMetaData& depthMetaData ) virtual inline void pushDepthMetaData( xn::DepthMetaData& depthMetaData )
{ {
cv::Ptr<xn::DepthMetaData> depthPtr = new xn::DepthMetaData, tmp; cv::Ptr<xn::DepthMetaData> depthPtr = cv::makePtr<xn::DepthMetaData>(), tmp;
depthPtr->CopyFrom(depthMetaData); depthPtr->CopyFrom(depthMetaData);
tbb::mutex mtx; tbb::mutex mtx;
...@@ -347,7 +347,7 @@ private: ...@@ -347,7 +347,7 @@ private:
virtual inline void pushImageMetaData( xn::ImageMetaData& imageMetaData ) virtual inline void pushImageMetaData( xn::ImageMetaData& imageMetaData )
{ {
cv::Ptr<xn::ImageMetaData> imagePtr = new xn::ImageMetaData, tmp; cv::Ptr<xn::ImageMetaData> imagePtr = cv::makePtr<xn::ImageMetaData>(), tmp;
imagePtr->CopyFrom(imageMetaData); imagePtr->CopyFrom(imageMetaData);
tbb::mutex mtx; tbb::mutex mtx;
...@@ -872,7 +872,7 @@ bool CvCapture_OpenNI::setCommonProperty( int propIdx, double propValue ) ...@@ -872,7 +872,7 @@ bool CvCapture_OpenNI::setCommonProperty( int propIdx, double propValue )
// start synchronization // start synchronization
if( approxSyncGrabber.empty() ) if( approxSyncGrabber.empty() )
{ {
approxSyncGrabber = new ApproximateSyncGrabber( context, depthGenerator, imageGenerator, maxBufferSize, isCircleBuffer, maxTimeDuration ); approxSyncGrabber.reset(new ApproximateSyncGrabber( context, depthGenerator, imageGenerator, maxBufferSize, isCircleBuffer, maxTimeDuration ));
} }
else else
{ {
...@@ -1175,8 +1175,8 @@ IplImage* CvCapture_OpenNI::retrievePointCloudMap() ...@@ -1175,8 +1175,8 @@ IplImage* CvCapture_OpenNI::retrievePointCloudMap()
int cols = depthMetaData.XRes(), rows = depthMetaData.YRes(); int cols = depthMetaData.XRes(), rows = depthMetaData.YRes();
cv::Mat pointCloud_XYZ( rows, cols, CV_32FC3, cv::Scalar::all(badPoint) ); cv::Mat pointCloud_XYZ( rows, cols, CV_32FC3, cv::Scalar::all(badPoint) );
cv::Ptr<XnPoint3D> proj = new XnPoint3D[cols*rows]; std::vector<XnPoint3D> proj(cols*rows);
cv::Ptr<XnPoint3D> real = new XnPoint3D[cols*rows]; std::vector<XnPoint3D> real(cols*rows);
for( int y = 0; y < rows; y++ ) for( int y = 0; y < rows; y++ )
{ {
for( int x = 0; x < cols; x++ ) for( int x = 0; x < cols; x++ )
...@@ -1187,7 +1187,7 @@ IplImage* CvCapture_OpenNI::retrievePointCloudMap() ...@@ -1187,7 +1187,7 @@ IplImage* CvCapture_OpenNI::retrievePointCloudMap()
proj[ind].Z = depth.at<unsigned short>(y, x); proj[ind].Z = depth.at<unsigned short>(y, x);
} }
} }
depthGenerator.ConvertProjectiveToRealWorld(cols*rows, proj, real); depthGenerator.ConvertProjectiveToRealWorld(cols*rows, &proj.front(), &real.front());
for( int y = 0; y < rows; y++ ) for( int y = 0; y < rows; y++ )
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment