neuer_ansatz_bildverarbeitung #1

Manually merged
zeunerti74726 merged 8 commits from neuer_ansatz_bildverarbeitung into master 2022-12-01 08:17:31 +00:00
3 changed files with 25 additions and 6 deletions
Showing only changes of commit 01f29ca9cd - Show all commits

View File

@ -15,6 +15,8 @@ int main(void)
const int apertureSizeCanny = 3;
LFR lfr(videoHeight, videoWidth, thresholdBinary, gaussKernelSize, thresholdCanny1, thresholdCanny2, apertureSizeCanny);
lfr.saveOutputFlag = true;
lfr.outputFileName = "/home/pi/Line-Following-Robot/AutonomousMode/tmp/test.jpg";
lfr.startLoop();
//To end the video stream, write any char in the console.
char a;

View File

@ -10,6 +10,10 @@ LFR::LFR(int videoHeight, int videoWidth, int thresholdBinary, int gaussKernelSi
this->thresholdCanny1 = thresholdCanny1;
this->thresholdCanny2 = thresholdCanny2;
this->apertureSizeCanny = apertureSizeCanny;
this->videoFlag = false;
this->saveOutputFlag = false;
this->outputFileName = "";
}
LFR::~LFR()
@ -22,7 +26,7 @@ LFR::~LFR()
void LFR::loop()
{
namedWindow("Display window");
if(this->videoFlag) {namedWindow("Display window");}
while(iAmLooping)
{
Mat image = input.readWebcam();
@ -32,11 +36,18 @@ void LFR::loop()
{
line( image, Point(lines[i][0], lines[i][1]),
Point( lines[i][2], lines[i][3]), (0,0,255), 1, 8 );
}
imshow("Display window", image);
char c = (char)waitKey(1);
}
if(this->videoFlag)
{
imshow("Display window", image);
char c = (char)waitKey(1);
}
if (this->saveOutputFlag && !(this->outputFileName.empty()))
{
imwrite(this->outputFileName, image);
}
}
destroyWindow("Display window");
if(this->videoFlag) {destroyWindow("Display window");}
input.freeWebcam();
}
@ -51,4 +62,4 @@ void LFR::endLoop()
iAmLooping = false;
this->loopThread.join();
return;
}
}

View File

@ -39,5 +39,11 @@ public:
void startLoop();
void endLoop();
bool videoFlag;
bool saveOutputFlag;
std::string outputFileName;
};