mvCamera:: mvCamera (const char* video_file) : bin_resize ("mvCamera - resize"), bin_getFrame ("mvCamera - getFrame") { unsigned width, height; read_common_mv_setting ("IMG_WIDTH_COMMON", width); read_common_mv_setting ("IMG_HEIGHT_COMMON", height); _capture = cvCreateFileCapture (video_file); _imgResized = mvGetScratchImage_Color(); }
/** mvVideoWriter methods */ mvVideoWriter:: mvVideoWriter (const char* filename, unsigned framerate) : bin_writeFrame ("mvVideoWriter - writeFrame") { unsigned width, height; read_common_mv_setting ("IMG_WIDTH_COMMON", width); read_common_mv_setting ("IMG_HEIGHT_COMMON", height); _writer = cvCreateVideoWriter ( filename, // video file name CV_FOURCC('P','I','M','1'), // codec framerate, // framerate cvSize(width,height), // size 1 ); }
mvKMeans:: mvKMeans () { unsigned width; read_common_mv_setting ("IMG_WIDTH_COMMON", width); for (unsigned i = 0; i < MAX_CLUSTERS; i++) { _Clusters_Seed[i] = new CvPoint[2]; _Clusters_Temp[i] = new CvPoint[2]; _Clusters_Best[i] = new CvPoint[2]; } _Lines = NULL; _nLines = 0; _nClusters_Final = 0; }
void SimulatorSingleton::run_sim() { int argc = 0; char *argv[1]; unsigned width, height; read_common_mv_setting ("IMG_WIDTH_COMMON", width); read_common_mv_setting ("IMG_HEIGHT_COMMON", height); glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_DEPTH | GLUT_RGB | GLUT_DOUBLE); glutInitWindowSize (width, height); glutSetOption(GLUT_ACTION_ON_WINDOW_CLOSE, GLUT_ACTION_CONTINUE_EXECUTION); glutInitWindowPosition(10, 0); dwn_window = glutCreateWindow ("Down Cam"); glutPositionWindow(0, 400); glutReshapeFunc (::sim_reshape); glutDisplayFunc (::sim_display); glutIdleFunc (::sim_idle); glutKeyboardFunc (::sim_keyboard); glutCloseFunc (::sim_close_window); init_sim(); fwd_window = glutCreateWindow ("Forwards Cam"); glutReshapeFunc (::sim_reshape); glutDisplayFunc (::sim_display); glutIdleFunc (::sim_idle); glutKeyboardFunc (::sim_keyboard); glutCloseFunc (::sim_close_window); init_sim(); img_fwd = cvCreateImage (cvSize(width,height), IPL_DEPTH_8U, 3); img_dwn = cvCreateImage (cvSize(width,height), IPL_DEPTH_8U, 3); // set initial position std::string start_at; read_mv_setting(SIM_SETTINGS_FILE, "START_AT", start_at); float start_x = 0.f; float start_y = 0.f; float start_z = 0.f; float start_yaw = 0.f; if (start_at == "GATE") { start_x = -3.f; start_y = 7.5f; start_z = 16.f; } else if (start_at == "BUOY") { start_x = -3.3f; start_y = 4.5f; start_z = 3.f; start_yaw = 18.f; } else if (start_at == "GOALPOST") { start_x = 1.f; start_y = 2.5f; start_z = -4.2f; start_yaw = 80.f; } else if (start_at == "MULTIPATH") { start_x = 7.f; start_y = 2.5f; start_z = -5.f; start_yaw = 80.f; } else if (start_at == "TORPEDO_TARGET") { start_x = 10.1f; start_y = 2.35f; start_z = -1.9f; start_yaw = -170.f; } else if (start_at == "MARKER_DROPPER") { start_x = 10.8f; start_y = 2.5f; start_z = -7.1f; start_yaw = -4.f; } model.position.x = start_x; model.position.y = start_y; model.position.z = start_z; model.angle.yaw = start_yaw; set_target_depth(POOL_HEIGHT - start_y); set_target_yaw(start_yaw); // Sim has initialized sem_post(&sema); glutMainLoop(); }