int main()
{
	int thresh=25;
	CvCapture* capture;
	capture = cvCreateCameraCapture(-1);
	IplImage *frame,*res;
	char win[]="video_stream";
	char win2[]="outline_feed";
	cvNamedWindow(win,CV_WINDOW_AUTOSIZE);
	cvNamedWindow(win2,CV_WINDOW_AUTOSIZE);
	cvCreateTrackbar("Threshold",win2,&thresh,128);

	while(1)
	{
		frame=cvQueryFrame(capture);
		res = findedge(frame,thresh);
		clearnoise(res,0, 3);
		clearnoise(res,1, 3);
		cvShowImage(win,frame);
		cvShowImage(win2,res);
		
		if(cvWaitKey(50)==27)
			break;
	}
	cvReleaseImage(&frame);
	cvReleaseImage(&res);
	cvReleaseCapture(&capture);
	cvDestroyWindow(win);
	cvDestroyWindow(win2);
	return 0;
}
예제 #2
0
task main()
{
	waitForStart();
	while(true)
	{
  while(!joy1Btn(3) && !joy2Btn(3)) // remove before testing
  {
  	getJoystickSettings(joystick);

  	if (joy1Btn(6) || joy1Btn(8))
		{
			power = max_speed;
		}
		else
		{
			power = low_speed;
		}

  	left = clearnoise(joystick.joy1_y1);
  	right = clearnoise(joystick.joy1_y2);

  	if (joy1Btn(7) || joy1Btn(5))
		{
			if (abs(left) >= abs(right))
			{
				right = -1 * left;
			}

			else
			{
				left = -1 * right;
			}
		}

		if (joy1Btn(1))
		{
			left = max(left , right);
			right = left;
		}

		nxtDisplayCenteredTextLine (1,"%f", right);
		nxtDisplayCenteredTextLine (2,"%f", left);

		motor[R] = right;
		motor[L] = left;
	}
		all_same(0);
  }
}