Ejemplo n.º 1
0
int main(int argc, char* argv[])
{
	CvCapture *capture = 0;
	IplImage *img = 0;
	if( argc < 3 )
	{
		fprintf( stderr, "Usage: loadimg <filename> <cam(1)/image(2)>\n" );
		return 1;
    }
    else if (argv[2][0] == '1')
    {
		/* initialize camera */
		capture = cvCaptureFromCAM(0);
		/* always check */
		if ( !capture ) {
			fprintf( stderr, "Cannot open initialize webcam!\n" );
			fprintf( stderr, "Usage: loadimg <filename> <cam(1)/image(2)>\n" );
			return 1;
		}
		webcam(capture, argv[1]);
		img = cvLoadImage(argv[1],-1);
	}
	else if(argv[2][0] == '2')
	{
		img = cvLoadImage(argv[1],-1);
	}
	else
	{
		fprintf( stderr, "Invalid argument 2\n" );
		return 1;
	}
	
	if( img == 0 )
	{
        fprintf( stderr, "Cannot load file %s!\n", argv[1] );
        return 1;
    }
    
    int depth = img->depth;
	
	CvSize sz = cvSize( img->width & -2, img->height & -2 );
   
	IplImage* gray = cvCreateImage(cvSize(sz.width, sz.height), depth, 1);
	IplImage* copy = cvCreateImage(cvSize(sz.width, sz.height), depth, 3);
    cvCvtColor(img, gray, CV_BGR2GRAY);
    //gray= haar(img, gray);
    //edge(img);
    //colorEdge(img, gray);
    glg(img);
    keys(img, gray);
    //ocr();
    //cvShowImage("img",img);
    //cvWaitKey(0);
    cvReleaseImage(&img);
    cvReleaseImage(&copy);
    cvReleaseImage(&gray);
    return 0;
}
Ejemplo n.º 2
0
QvkWebcamController::QvkWebcamController(QWidget *parent )
    : QHBoxLayout(parent)
{
  //qDebug() << "Begin QvkWebcamController::QvkWebcamController( QWidget * value ) ***************************";


  checkBox = new QCheckBox;
  checkBox->setText( tr( "Webcam" ) );
  connect( checkBox, SIGNAL( clicked() ), SLOT( webcam() ) );
  this->addWidget(checkBox, 0, Qt::AlignLeft);


  comboBoxCount = new QComboBox;
  comboBoxCount->setToolTip( "Select webcam" );
  this->addWidget(comboBoxCount, 0, Qt::AlignLeft);

  
  myWebcamWatcher = new QvkWebcamWatcher();
  connect( myWebcamWatcher, SIGNAL( changed( QStringList ) ), this, SLOT( webcamChangedEvent( QStringList ) ) );
  connect( myWebcamWatcher, SIGNAL( added( QStringList, QStringList ) ), this, SLOT( webcamAddedEvent( QStringList, QStringList ) ) );
  connect( myWebcamWatcher, SIGNAL( removed( QStringList, QString ) ), this, SLOT( webcamRemovedEvent( QStringList, QString ) ) );
  myWebcamWatcher->myfileSystemWatcher( "/dev/" );

  if ( myWebcamWatcher->getWebcamCount() == 0 )
  {
    checkBox->setEnabled( false );
    comboBoxCount->setEnabled( false );
  }

  vkWebcam = new QvkWebcam();
  QSettings settings( "vokoscreen", "vokoscreen" );   
  settings.beginGroup( "Webcam" );
  vkWebcam->setDeviceNumber( settings.value( "Number", 0 ).toUInt() );
  comboBoxCount->setCurrentIndex( vkWebcam->getDeviceNumber() );
  settings.endGroup();
  
  //vkWebcam->setDeviceNumber( comboBoxCount->currentText().toUInt() );
  //comboBoxCount->setCurrentIndex( vkWebcam->getDeviceNumber() );
  
  connect( vkWebcam, SIGNAL( closeWebcam() ), this, SLOT( webcamCloseEvent() ) );
  //qDebug() << "End QvkWebcamController::QvkWebcamController( QWidget * value ) ***************************";
  
}
Ejemplo n.º 3
0
int main(int argc, char ** argv) {
  int x_res = 1280, y_res = 720, video_capture = 0, cuda_device = 0, threshold;
  bool verbose = false, gpu = true;
  get_options(argc, argv, x_res, y_res, video_capture, cuda_device, gpu,
              verbose);
  if ((HAVE_CUDA == false) && (gpu = true)) {
    std::cout << "greplace was compiled without CUDA support. Proceeding on ";
    std::cout << "CPU." << std::endl;
  }
  threshold = x_res * y_res / THRESHOLDING_FACTOR;
  cv::VideoCapture webcam(video_capture);
	webcam.set(CV_CAP_PROP_FRAME_WIDTH,  x_res);
	webcam.set(CV_CAP_PROP_FRAME_HEIGHT, y_res);
  cv::namedWindow(MAIN_WINDOW_TITLE, CV_WINDOW_AUTOSIZE );
  cv::Ptr<cv::FaceRecognizer> model = cv::createFisherFaceRecognizer();
  greplace::Person previous_person = greplace::Person(std::string(FACES_LOAD_DIRECTORY),
                                          x_res, y_res);
  previous_person.train_model(model);
    cv::CascadeClassifier classifier = greplace::init(HAAR_CASCADE_FRONTAL_FACE_LOCATION);
    greplace::main_loop(webcam, classifier, model, previous_person, threshold,
                        INTERPERSON_PERIOD, MAIN_WINDOW_TITLE);

  return EXIT_FAILURE;
}