Пожарная профилактика лаборатории исследовательского бюро

{ cvDrawContours(dst7,contour,color,color,-1,1,8);(contour,&moments,0); centre_of_mass.x=moments.m10/moments.m00; centre_of_mass.y=moments.m01/moments.m00;(dst7,centre_of_mass,5,CV_RGB(255,255,255),1,8,0);}("Contour",dst7);(gray,dst8,3,7,harrist/1000.0);("Harris",dst8);CvScalar colors[] =

{ {{0,0,255}},

{{0,128,255}},

{{0,255,255}},

{{0,255,0}},

{{255,128,0}},

{{255,255,0}},

{{255,0,0}},

{{255,0,255}}

};scale = 1.3;* gray2 = cvCreateImage( cvSize(src->width,src->height), 8, 1 );* small_img = cvCreateImage( cvSize( cvRound (src->width/scale),(src->height/scale)),8, 1 ); int i;( src, gray2, CV_BGR2GRAY );( gray2, small_img, CV_INTER_LINEAR );( small_img, small_img );( storage );( cascade )

{ double t = (double)cvGetTickCount();* face = cvHaarDetectObjects( small_img, cascade, storage,1.1,1,0,cvSize(30,30));= (double)cvGetTickCount() - t;( "detection time = %gms\n", t/((double)cvGetTickFrequency()*1000.) );( i = 0; i < (face ? face->total : 0); i++ )

{ CvRect* r = (CvRect*)cvGetSeqElem( face, i );center;radius;.x = cvRound((r->x + r->width*0.5)*scale);.y = cvRound((r->y + r->height*0.5)*scale);= cvRound((r->width + r->height)*0.5*scale);( src, center, radius, colors[i%8], 3, 8, 0 );

}

} cvPreCornerDetect(dst3,dst5,5);( "CornerDetect", dst5 );( dst, src2, cvPoint2D32f(src->width/2,src->height/2), 40, CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS+CV_WARP_INVERSE_MAP );( "log-polar", dst );( "inverse log-polar", src2 );();(src2,dst,2,10+thresh,CV_THRESH_BINARY_INV);( "threshold", dst );(dst3,dst4,5+thresh2,CV_ADAPTIVE_THRESH_MEAN_C,CV_THRESH_BINARY,3,5);( "Adaptive", dst4 );( "result", src );( &gray2 );( &small_img );(dst);(gray);;(dst2);(dst3);(dst6);(dst7);(dst8);(dst5);

}CMainWin::OnClose()

{ cvcamStop();();();(!bCreate)cvReleaseImage(&dst);();

}

// Файл 1.h

#if _MSC_VER > 1000

#pragma onceCMainWin : public CFrameWnd

{:();OnClose();_MESSAGE_MAP();

};CApp : public CWinApp

{:

BOOL InitInstance();

};

Интерфейс главного окна программы:

Рисунок 1.А - Интерфейс окна программы

Приложение Б Тест программы 2

#include "cv.h"

#include "cxcore.h"

#include "highgui.h"

#include "math.h"

#include <iostream>

#include <stdio.h>

#include <string.h>

#include <conio.h>

#include <sstream>namespace std;angle( CvPoint* pt1, CvPoint* pt2, CvPoint* pt0 )

{dx1 = pt1->x - pt0->x;dy1 = pt1->y - pt0->y;dx2 = pt2->x - pt0->x;dy2 = pt2->y - pt0->y;(dx1*dx2 + dy1*dy2)/sqrt((dx1*dx1 + dy1*dy1)*(dx2*dx2 + dy2*dy2) + 1e-10);}* findSquares4( IplImage* img, CvMemStorage* storage )

{ double s = 0, t = 0;* contours = NULL;* result = NULL;* squares = cvCreateSeq( 0, sizeof( CvSeq), sizeof( CvPoint), storage );( img, storage, &contours, sizeof( CvContour), СV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE, cvPoint( 0, 0) );( contours )

{ result = cvApproxPoly( contours, sizeof( CvContour), storage, CV_POLY_APPROX_DP, cvContourPerimeter( contours)*0.02, 0 );( result->total == 4 && fabs( cvContourArea( result, СV_WHOLE_SEQ)) > 1000 && fabs( cvContourArea( result, CV_WHOLE_SEQ)) <( img->height * img->width/2 ) && cvCheckContourConvexity( result) )

{ s = 0;( int i = 0; i < 5; i++ )

{ if( i >= 2 ) { t = fabs( angle( ( CvPoint*)cvGetSeqElem( result, i ), ( CvPoint*)cvGetSeqElem( result, i-2 ), ( CvPoint*)cvGetSeqElem( result, i-1 )));= s > t ? s : t; } }( s < 0.5 )for( int i = 0; i < 4; i++ )cvSeqPush( squares, (CvPoint*)cvGetSeqElem( result, i )); }= contours->h_next; }<<">>> rectangles: "<< squares->total/4 <<endl;squares;}drawSquares(IplImage *img, CvSeq* squares )

Перейти на страницу: 1 2 3 4

Другое по теме:

Оценка дальности связи оборудования симметричной DSL технологии
Развитие современных телекоммуникационных систем, цифровых электронных станций и аппаратуры уплотнения затронуло также один из самых консервативных элементов сети электросвязи - абонентскую линию. В концепции структуры сети э ...

Экспертный исследование панели управления музыкального центра TEAC LP-R400
Интенсивное развитие вычислительной техники и ее широкое использование в АСУ различных уровней и назначения обусловливают актуальность исследований и разработок, связанных с проблемой организации эффективного взаимодействия ...

©  www.techvarious.ru - 2019