» »

Začetniški problem pri klicanju funkcij

Začetniški problem pri klicanju funkcij

Pernnie ::

void markEdges(IplImage* image,IplImage* edge)
{
CvMemStorage* storage = cvCreateMemStorage(0);
CvSeq* lines = 0;
lines = cvHoughLines2( edge, storage, CV_HOUGH_PROBABILISTIC, 1, 3*CV_PI/180, 75, 10, 20 );
    for( int i = 0; i < lines->total; i++ )
    {
        CvPoint* line = (CvPoint*)cvGetSeqElem(lines,i);
        cvLine( image, line[0], line[1], CV_RGB(255,0,0), 3, 8 );
    }
}

Uporabljam OpenCV knjižnice. To je funkcija, ki pač obarva robe...imam problem pri klicanju le te...
Tukaj imam kot argument kazalca na image (originalna slika) in edge (slika z robovi). Ne vem, kako poklicem to funkcijo, da pač dobim sliko - image (kateri v tej funkciji narišem črte), ki jo potem v main programu še izrišem na zaslon, shranim v file... Hvala za odgovor.

BigWhale ::

Output te funkcije je na naslovu *edge, ko se funkcija zakljuci? Ne vem kaj naredi chHoughLines2().

poklices jo pa tako, da kot prvi parameter podas neko sliko, kot drugi parameter pa nek target image, verjetno prazen in tam notri se potem pojavi rezultat.

Makes sense?

Vesoljc ::

to delas po temu?

kaksne tezave pa sploh imas?
Abnormal behavior of abnormal brain makes me normal...

Pernnie ::

ja, delam po tem, kar je blo na tem linku...
... mi tudi dela, če pač vpišem vse korake kode lepo po vrsti v "main program"...

kar pa ne znam ... je pa to: da bi imel funkcijo markEdges (to je ta del kode, ki je napisan zgoraj) posebej in bi jo klical v main programu... Je to sploh smiselno-kako to naredim? Na kakšen način bi klical to funkcijo markEdges, ki je napisana zgoraj?

A sem kej bolj razumljivo povedu?

Vesoljc ::

amm, kej tacga mislis?

file: imageutil.h
#include <cv_stuff.h>

// prototype
void markEdge(...);


file: imageutil.cpp
#include "imageutil.h"

// implementation
void markEdge(...)
{
   // do stuff
}


file: main.cpp
#include "imageutil.h"

// usage
int main()
{
   // bla bla
   // prepare image data
   markEdge(...);
}
Abnormal behavior of abnormal brain makes me normal...

Pernnie ::

Ja ja, na tak način sem mislil.

Pač prototype in implementation napišem...mi pa ni čist jasno, kako pol klicat v:
int main()
{
   // bla bla

   // prepare image data

   markEdge(...);
}

Vesoljc ::

ja tko kot sem napisal, ne vem kje vidis problem?

naredi si nov par file-ov (header + cpp), v njim naredi prototipe in implementacije funkcij, v main.cpp pa definiraj podatke, ki jih rabis, ter includaj prej omenjeni header. potem pa pac poklices funkcijo.
Abnormal behavior of abnormal brain makes me normal...


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C++]Uporaba strukture v drugi .cpp datoteki

Oddelek: Programiranje
143095 (2798) mallard
»

tekstura [c++ opengl]

Oddelek: Programiranje
9905 (690) matej94
»

Qt Designer -> KDevelop C++ Error

Oddelek: Programiranje
352111 (1641) 'FireSTORM'
»

[C++] prevajalnik hoce konstruktor za strukturo

Oddelek: Programiranje
182585 (2289) Tr0n
»

[C++] Thinking in C++

Oddelek: Programiranje
101112 (977) rozha

Več podobnih tem