コード例 #1
0
ファイル: OpenCVCore.cpp プロジェクト: kapecp/3dsoftviz
void OpenCV::OpenCVCore::createConnectionMultiAruco()
{
	QObject::connect( mOpencvWindow,
					  SIGNAL( startMultiMarker() ),
					  mThrAruco,
					  SLOT( start() ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( setMultiMarker( bool ) ),
					  mThrAruco,
					  SLOT( setMultiMarker( bool ) ) );

	QObject::connect( mOpencvWindow,
					  SIGNAL( setCapVideoMarker( OpenCV::CapVideo* ) ),
					  mThrAruco,
					  SLOT( setCapVideo( OpenCV::CapVideo* ) ) );

	QObject::connect( mThrAruco,
					  SIGNAL( pushImagemMat( cv::Mat ) ),
					  mOpencvWindow,
					  SLOT( setLabel( cv::Mat ) ) );
}
コード例 #2
0
void ArucoThread::imagesSending( ArucoCore& aCore, const cv::Mat frame ) const
{


	if ( mSendBackgrImgEnabled && !frame.empty() ) {
		if ( ! mMarkerIsBehind ) {
			cv::flip( frame, frame, 1 );
		}
		cv::cvtColor( frame, frame,CV_BGR2RGB );

		emit pushBackgrImage( frame.clone() );
	}

	cv::Mat image;
	if ( mMultiMarkerEnabled ) {
		image = aCore.getDetectedRectangleImage();
	}
	else {
		image = aCore.getDetImage();
	}

	if ( mSendImgEnabled ) {
		if ( ! mMarkerIsBehind ) {
			cv::flip( image, image, 1 );
		}
		cv::cvtColor( image, image, CV_BGR2RGB );


		if ( mSendBackgrImgEnabled ) {
			//if you comment this, background image will be without the augmented reality
			emit pushBackgrImage( image.clone() );
		}

		emit pushImagemMat( image.clone() );

	}
}
コード例 #3
0
ファイル: OpenCVCore.cpp プロジェクト: kapecp/3dsoftviz
void OpenCV::OpenCVCore::createConnectionAruco()
{
	// send actual image
	QObject::connect( mOpencvWindow,
					  SIGNAL( sendImgMarker( bool ) ),
					  mThrAruco,
					  SLOT( setSendImgEnabling( bool ) ) );
	/*QObject::connect( mThrAruco,
					  SIGNAL(pushImage(QImage)),
					  mOpencvDialog,
					  SLOT(setLabelQ(QImage)) );*/
	QObject::connect( mThrAruco,
					  SIGNAL( pushImagemMat( cv::Mat ) ),
					  mOpencvWindow,
					  SLOT( setLabel( cv::Mat ) ) );


	// send actual image to background
	QObject::connect( mOpencvWindow,
					  SIGNAL( sendBackgrImgMarker( bool ) ),
					  mThrAruco,
					  SLOT( setSendBackgrImgEnabled( bool ) ) );

	// start, stop
	QObject::connect( mOpencvWindow,
					  SIGNAL( startMarker() ),
					  mThrAruco,
					  SLOT( start() ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( stopMarker( bool ) ),
					  mThrAruco,
					  SLOT( setCancel( bool ) ) );
	QObject::connect( mThrAruco,
					  SIGNAL( finished() ),
					  mOpencvWindow,
					  SLOT( onMarkerThrFinished() ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( setCapVideoMarker( OpenCV::CapVideo* ) ),
					  mThrAruco,
					  SLOT( setCapVideo( OpenCV::CapVideo* ) ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( startMultiMarker() ),
					  mThrAruco,
					  SLOT( start() ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( stopMultiMarker( bool ) ),
					  mThrAruco,
					  SLOT( setCancel( bool ) ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( startMarker() ),
					  AppCore::Core::getInstance( mApp )->getCoreWindow(),
					  SLOT( swapManipulator() ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( arucoRunning( bool ) ),
					  AppCore::Core::getInstance( mApp )->getCoreGraph(),
					  SLOT( setArucoRunning( bool ) ) );

	// other seting
	QObject::connect( mOpencvWindow->getMarkerBehindCB(),
					  SIGNAL( clicked( bool ) ),
					  mThrAruco,
					  SLOT( setPositionOfMarker( bool ) ) );
	QObject::connect( mOpencvWindow->getCorEnabledCB(),
					  SIGNAL( clicked( bool ) ),
					  mThrAruco,
					  SLOT( setCorEnabling( bool ) ) );
	QObject::connect( mOpencvWindow->getUpdateCorParPB(),
					  SIGNAL( clicked() ),
					  mThrAruco,
					  SLOT( updateCorectionPar() ) );
	QObject::connect( mThrAruco,
					  SIGNAL( corParUpdated() ),
					  mOpencvWindow,
					  SLOT( onCorParUpdated() ) );
	QObject::connect( mOpencvWindow,
					  SIGNAL( setMultiMarker( bool ) ),
					  mThrAruco,
					  SLOT( setMultiMarker( bool ) ) );

	// aruco mouse Controll
	QObject::connect( mOpencvWindow->getInterchangeMarkersPB(),
					  SIGNAL( clicked() ),
					  mThrAruco,
					  SLOT( interchangeMarkers() ) );

}