(links das aufgenommene Bild, rechts die "Pheromonspur")
Mal schauen, wie es bei der nächsten Proteinfütterung aussieht und ob bzw. wie sich da Haupt- und Nebenpfade herausbilden




 ???
 ???  

 
 

 
 

 
 // lpic - letztes Bild
// pic - aktuelles Bild
// bin_t - Schwellwert zur Binarisierung
// Weichzeichnung
cv::GaussianBlur(pic,pic,Size(5,5));
// Differenz der Bilder
cv::absdiff(lpic,pic,out);
// Schwellwert
cv::threshold(out,out,bin_t,255,0);

antpath.exe -f PFAD_ZU_VIDEODATEI





#include <stdio.h>
#include <iostream>
#include <opencv2/opencv.hpp>
#include <sstream>
using namespace cv;
using namespace std;
int main()
{
int zahl=0,rest=0,zahlrech=0,x,bildnummer=0;
string name,anhang,bildname;
char buffer[50];
name="Bild";
anhang=".jpg";
cout<<"Alle wie viel frames eines speichern?"<<endl;
cout<<"hier eingeben"<<endl;
cin>>x;
namedWindow("Bilder",CV_WINDOW_NORMAL);
//Webcam abrufen
    VideoCapture webcam(1);
if (!webcam.isOpened())
{
    cout << "geht net!"<<endl;
    return(-1);
}
//Endlosschleife (Frames einlesen/speichern und ausgeben
while(1)
    {
        Mat frame;
         webcam.read(frame); // read a new frame from video
         imshow("Bilder",frame);
//wandelt int um
sprintf (buffer,"%d",bildnummer);
//erstelt den Datei/speichernamen
bildname= name+buffer+anhang;
rest=zahlrech%x;
if(rest==0)
    {
imwrite(bildname, frame);
 bildnummer=bildnummer+1;
}
         //COUNTER
if(webcam.isOpened())
    {
zahl=zahl+1;
zahlrech=zahl;
    }
if (waitKey(30) == 27) //wait for 'esc' key press for 30ms. If 'esc' key is pressed, break loop
{
cout << "esc keys is pressed by user" << endl;
break;
}
    }
        return 0;
}


#include <stdio.h>
#include <iostream>
#include <opencv2/opencv.hpp>
#include <sstream>
using namespace cv;
using namespace std;
int main()
{
    int x,webcam_nr,bildnummer=0;
    string name,anhang,bildname;
    char buffer[50];
    name="Bild";
    anhang=".jpg";
    cout<<"Alle wie viel Sekunden ein Bild speichern?"<<endl;
    cout<<"hier eingeben"<<endl;
    cin>>x;
    cout<<"Welche Webcam Nr?"<<endl;
    cout<<"hier eingeben"<<endl;
    cin>>webcam_nr;
    namedWindow("Bilder",CV_WINDOW_NORMAL);
    VideoCapture webcam(webcam_nr);
    if (!webcam.isOpened())
    {
        cout << "geht net!"<<endl;
        return(-1);
    }
    //Endlosschleife (Frames einlesen/speichern und ausgeben
    while(1){
        Mat frame;
        webcam.read(frame); // read a new frame from video
        imshow("Bilder",frame);
        //wandelt int um (format fuenfstellig mit fuehrenden nullen)
        sprintf (buffer,"%05d",bildnummer);
        //erstelt den Datei/speichernamen
        bildname = name+buffer+anhang;
        //rest=zahlrech%x;
        imwrite(bildname, frame);
        bildnummer++; //zaehlt direkt hoch :) =bildnummer+1;
        // der direkte Vergleich in der if Abfrage ging bei mir irgendwie nicht
        char k = waitKey(x*1000); //warte einfach die Zeit in Sekunden
        if (k == 27) //wait for 'esc' key press for 30ms. If 'esc' key is pressed, break loop
        {
            cout << "esc keys is pressed by user" << endl;
            break;
        }
    }
    return 0;
}


Zurück zu Allgemeines und europäische Ameisenarten
Mitglieder in diesem Forum: 0 Mitglieder und 31 Gäste