|
Preparatory assignment:
- Read How to get an answer to your question.
- Try to understand what have you read.
- Read again.
- If you have any doubt then go to point 1.
- Try to make a meaningful post in the forum.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
How to Previewing video and write to file from video capture device using Direct show ...
|
|
|
|
|
Look at the AMCap direct show sample.
«_Superman_»
I love work. It gives me something to do between weekends.
|
|
|
|
|
We know cvcamshift.cpp in cv.lib of opencv .Do you understand the program's algorithmic about it's Orientation and Scale Calculation.I don't konw how it work.
I show the file cvcamshift.cpp
<br />
<br />
CV_IMPL int<br />
cvCamShift( const void* imgProb, CvRect windowIn,<br />
CvTermCriteria criteria,<br />
CvConnectedComp* _comp,<br />
CvBox2D* box )<br />
{<br />
const int TOLERANCE = 10;<br />
CvMoments moments;<br />
double m00 = 0, m10, m01, mu20, mu11, mu02, inv_m00;<br />
double a, b, c, xc, yc;<br />
double rotate_a, rotate_c;<br />
double theta = 0, square;<br />
double cs, sn;<br />
double length = 0, width = 0;<br />
int itersUsed = 0;<br />
CvConnectedComp comp;<br />
CvMat cur_win, stub, *mat = (CvMat*)imgProb;<br />
<br />
CV_FUNCNAME( "cvCamShift" );<br />
<br />
comp.rect = windowIn;<br />
<br />
__BEGIN__;<br />
<br />
CV_CALL( mat = cvGetMat( mat, &stub ));<br />
<br />
CV_CALL( itersUsed = cvMeanShift( mat, windowIn, criteria, &comp ));<br />
windowIn = comp.rect;<br />
<br />
windowIn.x -= TOLERANCE;<br />
if( windowIn.x < 0 )<br />
windowIn.x = 0;<br />
<br />
windowIn.y -= TOLERANCE;<br />
if( windowIn.y < 0 )<br />
windowIn.y = 0;<br />
<br />
windowIn.width += 2 * TOLERANCE;<br />
if( windowIn.x + windowIn.width > mat->width )<br />
windowIn.width = mat->width - windowIn.x;<br />
<br />
windowIn.height += 2 * TOLERANCE;<br />
if( windowIn.y + windowIn.height > mat->height )<br />
windowIn.height = mat->height - windowIn.y;<br />
<br />
CV_CALL( cvGetSubRect( mat, &cur_win, windowIn ));<br />
<br />
<br />
<big>CV_CALL( cvMoments( &cur_win, &moments ));
<br />
m00 = moments.m00;<br />
m10 = moments.m10;<br />
m01 = moments.m01;<br />
mu11 = moments.mu11;<br />
mu20 = moments.mu20;<br />
mu02 = moments.mu02;<br />
<br />
if( fabs(m00) < DBL_EPSILON )<br />
EXIT;<br />
<br />
inv_m00 = 1. / m00;<br />
xc = cvRound( m10 * inv_m00 + windowIn.x );<br />
yc = cvRound( m01 * inv_m00 + windowIn.y );<br />
a = mu20 * inv_m00;
b = mu11 * inv_m00;
c = mu02 * inv_m00;
<br />
<br />
square = sqrt( 4 * b * b + (a - c) * (a - c) );<br />
<br />
<br />
theta = atan2( 2 * b, a - c + square );<br />
<br />
<br />
<br />
<br />
cs = cos( theta );<br />
sn = sin( theta );<br />
<br />
rotate_a = cs * cs * mu20 + 2 * cs * sn * mu11 + sn * sn * mu02;<br />
rotate_c = sn * sn * mu20 - 2 * cs * sn * mu11 + cs * cs * mu02;<br />
length = sqrt( rotate_a * inv_m00 ) * 4;<br />
width = sqrt( rotate_c * inv_m00 ) * 4;<br />
<br />
<br />
if( length < width )<br />
{<br />
double t;<br />
<br />
CV_SWAP( length, width, t );<br />
CV_SWAP( cs, sn, t );<br />
theta = CV_PI*0.5 - theta;<br />
}<br />
<br />
<br />
if( _comp || box )<br />
{<br />
int t0, t1;<br />
int _xc = cvRound( xc );<br />
int _yc = cvRound( yc );<br />
<br />
t0 = cvRound( fabs( length * cs ));<br />
t1 = cvRound( fabs( width * sn ));<br />
<br />
t0 = MAX( t0, t1 ) + 2;<br />
comp.rect.width = MIN( t0, (mat->width - _xc) * 2 );<br />
<br />
t0 = cvRound( fabs( length * sn ));<br />
t1 = cvRound( fabs( width * cs ));<br />
<br />
t0 = MAX( t0, t1 ) + 2;<br />
comp.rect.height = MIN( t0, (mat->height - _yc) * 2 );<br />
<br />
comp.rect.x = MAX( 0, _xc - comp.rect.width / 2 );<br />
comp.rect.y = MAX( 0, _yc - comp.rect.height / 2 );<br />
<br />
comp.rect.width = MIN( mat->width - comp.rect.x, comp.rect.width );<br />
comp.rect.height = MIN( mat->height - comp.rect.y, comp.rect.height );<br />
comp.area = (float) m00;<br />
}</big><br />
<br />
__END__;<br />
<br />
if( _comp )<br />
*_comp = comp;<br />
<br />
if( box )<br />
{<br />
box->size.height = (float)length;<br />
box->size.width = (float)width;<br />
box->angle = (float)(theta*180./CV_PI);<br />
box->center = cvPoint2D32f( comp.rect.x + comp.rect.width*0.5f,<br />
comp.rect.y + comp.rect.height*0.5f);<br />
}<br />
<br />
return itersUsed;<br />
}<br />
<br />
<br />
Thank you everybody.I am looking forward to you answer .
hello
|
|
|
|
|
Hi,
I am reading a file using C into a buffer (structure). For 7 times I am reading it without error but when I try to read that 8th or 9th time it is reaidng the content into buffer but fread() is returning zero can anybody suggest me what mey be the reason.
Thanks in advance,
Regards,
Hema.
|
|
|
|
|
You probably reached the end of the file.
You are probably seeing the previous contents in the buffer when fread returns 0.
«_Superman_»
I love work. It gives me something to do between weekends.
|
|
|
|
|
Will a parent class constructor be called by child class constructor by default ?
|
|
|
|
|
The order of execution of the constructor is from parent to child class..ie first parent class constructor is invoked then child class constructor will be invoked..
|
|
|
|
|
For default constructors, Yes.
For other argument constructors you have to explicitly call it.
«_Superman_»
I love work. It gives me something to do between weekends.
|
|
|
|
|
Can a child class pointer access the base class members ?
|
|
|
|
|
It can access public members of the base class.
«_Superman_»
I love work. It gives me something to do between weekends.
|
|
|
|
|
so this would be by typecasting the pointer as the base class object pointer or direct access ?
|
|
|
|
|
No need of typecasting.
«_Superman_»
I love work. It gives me something to do between weekends.
|
|
|
|
|
I'm not sure I fully understood the question but if he's talking about a child class accessing the members of the base class (I didn't get the part with the pointer...), then it can also access protected members.
Of course, this is in the case of public inheritance (is there actually anybody using another kind of inheritance ?)
|
|
|
|
|
This is what I think his question is -
class Base
{
protected:
int i;
};
class Child : public Base
{
};
void main()
{
Child* ptr = new Child;
ptr->i;
}
«_Superman_»
I love work. It gives me something to do between weekends.
|
|
|
|
|
Will stop posting this question over and over again ? If you didn't get any reply yet it can mean that nobody knows the answer or your question is so vague that nobody can reply.
Yesterday somebody asked for clarifications and you didn't reply. Somebody else even gave you a solution. So what's the problem with it ? You don't care because it's not a full code snippet that works out of the box ?
|
|
|
|
|
|
Purish Dwivedi wrote: Some more clarification is needed...
So why didn't you ask him instead of reposting your question as if nobody replied ?
|
|
|
|
|
How to write a capture video data to .avi or .wmv file
|
|
|
|
|
I am compiling with g++ 4.2.4 on Ubuntu Hardy. I am trying to creating a public function to return a value of a private variable within the class. The output I am getting is not correct. What did I miss here?
#include <iostream>
using namespace std;
class Point
{
public:
Point(float f_x = 1.0, float f_y = 1.0, float f_z = 1.0);
~Point();
float getX();
private:
float x, y, z;
protected:
};
Point::Point(float f_x, float f_y, float f_z)
{
cout << "We're in the constructor with arguments " << (int)this << endl;
}
Point::~Point()
{
cout << "Destructing now!!! " << (int)this << endl;
}
float Point::getX()
{
return x;
}
int main()
{
Point myLocation(23, 54, 32);
cout << myLocation.getX() << endl;
return 0;
}
|
|
|
|