HALCON 21.11 Framvinda

Fljótur aðgangur að virkni HALCON, útgáfu 21.11.0.0
Allur réttur áskilinn. Engan hluta þessarar útgáfu má afrita, geyma í sóttkerfi eða senda á nokkurn hátt eða á nokkurn hátt, rafrænt, vélrænt, ljósritað, hljóðritað eða á annan hátt, án skriflegs leyfis útgefanda.
Höfundarréttur © 2003-2021 af MVTec Software GmbH, München, Þýskalandi
Varið með eftirfarandi einkaleyfum: US 7,239,929, US 7,751,625, US 7,953,290, US 7,953,291, US 8,260,059, US 8,379,014, US 8,830,229. Frekari einkaleyfi í bið.
Microsoft, Windows, Windows Server 2008/2012/2012 R2/2016, Windows 7/8/8.1/10, Microsoft .NET, Visual C++ og Visual Basic eru annað hvort vörumerki eða skráð vörumerki Microsoft Corporation.
Linux er vörumerki Linus Torvalds.
macOS og OpenCL eru vörumerki Apple Inc.
NVIDIA, CUDA, cuBLAS og cuDNN eru annað hvort vörumerki eða skráð vörumerki NVIDIA Corporation.
OpenGL er vörumerki Silicon Graphics, Inc.
Öll önnur lands- og alþjóðlega viðurkennd vörumerki og vöruheiti eru hér með viðurkennd.
Frekari upplýsingar um HALCON má finna á: http://www.halcon.com/
Um þessa handbók
Þessi handbók kynnir þig fyrir HALCON. Hann er ætlaður byrjendum án fyrri þekkingar á HALCON.
Þessa handbók er einnig hægt að nota sem tilvísun í nokkrar aðrar HALCON handbækur, þar sem hún tengir þær saman við eftirfarandi efni:
- Uppsetning HALCON (síðu 7)
Þessi kafli kynnir MVTec hugbúnaðarstjórann (SOM). - HALCON arkitektúr (síðu 9)
Einhver fræðilegur bakgrunnur, þarf til að skilja hvað HALCON er og hvernig það virkar. - Hvernig á að þróa forrit (síðu 15)
Þessi kafli útskýrir þrjár grundvallaraðferðir til að þróa með HALCON og leiðbeinir þér í gegnum fyrsta forritunardæmiðample. - Hvernig á að halda áfram (síðu 19)
Í þessum kafla er vísað til viðbótarupplýsinga.
Er að setja upp HALCON
Fyrir Linux og Windows notendur mælum við með því að hala niður og setja upp HALCON í gegnum MVTec Software Manager (SOM). SOM er uppsetningarstjóri fyrir hugbúnaðarpakka. Það veitir aðgang að ytri vörulista og styður meðal annars niðurhal og uppsetningu pakka. Skref fyrir skref kynningu á því hvernig á að setja HALCON upp í gegnum SOM er að finna í uppsetningarhandbókinni.
HALCON arkitektúr
Grunnarkitektúr HALCON er sýndur á mynd 2.1. Aðalhlutinn er myndvinnslusafnið sem samanstendur af meira en 2000 rekstraraðilum. Þú getur líka þróað þína eigin rekstraraðila í formi svokallaðra aukaspennupakka (bls. 11). Þú notar rekstraraðilana í forritinu þínu í gegnum tungumálaviðmót (síðu 11) eins og HALCON/C++ eða HALCON/Python. Þetta eru bókasöfn sem leyfa beinni notkun rekstraraðila í dæmigerðum forritunarstíl mismunandi forritunarmála.

Mynd 2.1: Grunnarkitektúr HALCON.
Til að fá aðgang að myndatökutækjum býður HALCON upp myndtökuviðmót (bls. 13) sem gerir þér kleift að nota töluvert ólík tæki til töku á algengan hátt. Söfnin sem innihalda tækjasértækar útfærslur eru hlaðnar á virkan hátt þegar þörf krefur. Á sama hátt er aðgangur að I/O-tækjum í gegnum tækissértæk I/O-viðmót (bls. 13).
Rekstraraðilar
Alltaf þegar hvers kyns virkni er notuð úr HALCON bókasafninu er það gert í gegnum rekstraraðila. Flestar þeirra samanstanda af mörgum aðferðum sem eru valdar með breytum. Fullan lista yfir alla rekstraraðila er að finna í HALCON Operator Reference sem er fáanleg í HDevelop, .NET, Python, C++ og C setningafræði. Mikilvægir eiginleikar rekstraraðila eru:
- Það er ekkert stigveldi meðal rekstraraðila. Frá hugbúnaðararkitektúr benda á view, allir rekstraraðilar eru á sama stigi.
- Auðvitað eru rökréttir hópar rekstraraðila. Til dæmisample, þetta má sjá af flokkunum sem boðið er upp á fyrir C++ og .NET, þar sem rekstraraðilar sem vinna úr sömu gagnategund eru meðlimaaðgerðir samsvarandi flokka.
- Hönnun rekstraraðila fer eftir reglum hins opna arkitektúrs. Þess vegna getur þú búið til þína eigin rekstraraðila og þannig framlengt HALCON (sjá kafla 2.2). Forritarahandbók viðbótapakkans inniheldur ítarlegar upplýsingar um að stækka rekstrarsafnið.
- Margir rekstraraðilar geta nýtt sér gagnsæja sjálfvirka samhliðatengingu, sem gerir auðvelda leið til að flýta forritinu þegar stórar myndir eru notaðar á fjölgjörva eða fjölkjarna tölvu. Ítarlegar upplýsingar um samhliða forritun er að finna í tækniskýrslunni Parallel Programming, sem og í Program-mer's Guide.
- Rekstraraðilar hafa staðlaðar reglur um röðun inntaks- og úttaksbreyta: táknmynd inntaks, táknmyndar fyrir úttak, inntaksstýringar og úttaksstýringar (sjá kafla 2.1.1). Ekki gæti verið þörf á öllum hópunum fyrir tiltekinn rekstraraðila. Almennt er inntaksbreytum rekstraraðila ekki breytt, sem leiðir af sér skýra og einfalda merkingarfræði. Það eru aðeins nokkrar undantekningar frá þessari hönnun, td set_grayval, overpaint_gray og overpaint_region.
Færibreytur og gagnauppbygging
HALCON hefur tvær grunngerðir af breytum: táknræn gögn og stjórnunargögn. Myndir, svæði og XLD (eXtented Line Description) tilheyra helgimyndagögnunum.
Myndir samanstanda aðallega af rásum, þ.e. fylki sem innihalda pixlagildi. Allar rásir myndar hafa sömu stærð. Fyrir nákvæmar upplýsingar um pixla og rásir, vinsamlegast lestu kaflann „Mynd“ í HALCON Operator Reference.
Fyrir hverja mynd tilgreinir svokallað áhugasvæði (ROI) hvaða hluti myndarinnar er unninn. Hægt er að skilgreina arðsemi á mjög sveigjanlegan hátt (frá einföldum rétthyrningi til safns ótengdra punkta). Fyrir nánari upplýsingar um meðhöndlun arðsemi, sjá lausnarleiðbeiningar I, áhugasvæði á síðu 27.
Svæði eru sett af punktum. Ekki þarf að tengja pixla svæðis. Jafnvel handahófskennt safn pixla er hægt að meðhöndla sem eitt svæði. Með símatengingunni er hægt að skipta svæði í tengd svæði, þ.e. íhluti sem samanstanda af tengdum punktum.
XLD samanstanda af öllum gögnum sem byggjast á útlínum og marghyrningum. Undirpixla-nákvæmar rekstraraðilar eins og edges_sub_pix skila útlínunum sem XLD gögnum. Útlínur er röð af 2D stýripunktum, sem eru tengdir með línum. Venjulega er fjarlægðin milli stýripunkta um einn pixel. XLD hlutir innihalda, fyrir utan stjórnpunkta, svokallaða staðbundna og alþjóðlega eiginleika. Dæmigert tdamples fyrir þetta eru td brúnin amplitude stjórnunarpunkts eða aðhvarfsbreytur útlínuhluta. Auk útdráttar á XLD hlutum styður HALCON frekari vinnslu. Fyrrverandiamples fyrir þetta eru val á útlínum byggt á tilteknum eiginleikasviðum fyrir skiptingu útlínur í línur, boga, marghyrninga eða hliðstæður.
Stýrigögnin innihalda handföng og helstu gagnagerðir eins og heiltala, raunverulegt, strengur.
Handföng eru tilvísanir í flóknar gagnabyggingar, td tengingu við myndtökuviðmót eða líkan fyrir samsvörun sem byggir á lögun. Af hagkvæmni og gagnaöryggisástæðum fer ekki allt skipulagið heldur aðeins handfangið á milli rekstraraðila. Handföng eru töfragildi sem ekki má breyta og geta verið mismunandi eftir útfærslu og útgáfu til útgáfu. Þær eru sjálfkrafa hreinsaðar þegar búið er að skrifa yfir allar tilvísanir. Fyrrverandiamples þar sem handföng eru notuð eru grafískir gluggar, files, innstungur, myndatökuviðmót, OCR, OCV, mælingar og samsvörun.
Framlengingarpakkar
HALCON gæti verið framlengt af nýjum rekstraraðilum. Þó að HALCON innihaldi nú þegar nóg af rekstraraðilum fyrir ýmis verkefni, gætirðu viljað innleiða nýja rekstraraðila, td til að fá aðgang að sérstökum vélbúnaði eða til að innleiða annað reiknirit. Til þess útvegar HALCON Viðbótarpakkaviðmótið, sem gerir kleift að samþætta nýja rekstraraðila (útfærð í C) í formi svokallaðra viðbótarpakka. Viðbótarpakkaviðmótið inniheldur nokkrar fyrirfram skilgreindar venjur og fjölvi til að auðvelda meðhöndlun myndgagna og minnishluta í C. Þegar nýr rekstraraðili hefur verið samþættur er hægt að nota hann eins og hvern annan HALCON rekstraraðila. Forritarahandbók viðbótapakkans inniheldur ítarlegar upplýsingar um að stækka rekstrarsafnið.
Tungumálaviðmót
Eins og sést á mynd 2.1 á blaðsíðu 9 býður HALCON upp á svokölluð tungumálaviðmót. Þetta eru móðurmálsbindingar sem gera þér kleift að hringja í símafyrirtæki og nota HALCON gagnategundir beint úr forritinu þínu, hvort sem það er Python, C, C++ eða .NET.
Til að hefja þróunina mælum við með því að athuga fyrst einn af tilbúnum fyrrverandiample forrit. Hér má sjá hvernig verkefnið verður að vera uppsett og hvernig rekstraraðilar og gerðir eru notaðar.
Fyrir hvert tungumálsviðmót geta nöfn tegunda, flokka, nafnavenjur rekstraraðila o.s.frv. verið mismunandi til að vera í samræmi við dæmigerðar reglur sem gilda fyrir valið tungumál. Undirskrift rekstraraðila fyrir studd forritunarmál eru skjalfest í HALCON Operator Reference.
HALCON/Python
Python viðmótið sker sig úr fyrir einfaldleikann og getu sína til hraðrar frumgerðar. HALCON rekstraraðilar eru kallaðir beint sem sjálfstæðar aðgerðir, eftir innflutning á HALCON/Python einingunni. Athugaðu einnig að rekstrarbreytur í HALCON/Python eru skipt í aðgerðafæribreytur (inntak) og skilgildi (úttak).
Example
Eftirfarandi kóði les mynd og reiknar fjölda tengdra svæða (bls. 10) í henni.
img = ha.read_image('pcb')
svæði = ha.threshold(img, 0, 122)
num_regions = ha.count_obj(ha.connection(region))
print(f'Fjöldi svæða: {num_regions}')
Fyrir forkröfur og ítarlega gönguferð, vinsamlegast sjá forritarahandbók, Part 4, A First Example.
HALCON/C
C viðmótið er einfaldasta viðmótið sem HALCON styður. Hver rekstraraðili er táknaður með annaðhvort einni eða tveimur alþjóðlegum föllum þar sem nafn rekstraraðila og færibreyturöðin eru eins og HDevelop tungumálið.
Example
Eftirfarandi kóði les mynd og reiknar fjölda tengdra svæða (bls. 10) í henni.
Hobject img;
read_image(&img, “pcb”);
Hobject svæði;
þröskuld(img, ®jón, 0, 122);
Hobject tengd_svæði;
tenging (svæði, &tengd_svæði);
Hlong num_regions = 0;
count_obj(tengd_svæði, &num_svæði);
printf(“Fjöldi svæða: %” PRIdPTR “\n”, fjöldi_svæði);
Fyrir forkröfur og ítarlega gönguferð, vinsamlegast sjá forritarahandbók, Part 5, A First Example.
HALCON/C++
C++ viðmótið er miklu flóknara en C viðmótið. Hér, advantages af C++ og hlutbundinni forritun eru notuð, þ.e. sjálfvirk tegundabreyting, smíði og eyðilegging, eða flokkun aðgerða ásamt gögnum þeirra í flokka. Eins og í C viðmótinu eru alþjóðlegar aðgerðir fyrir hvern HALCON rekstraraðila veittar fyrir verklagsstíl við forritun.
Example
Eftirfarandi kóði les mynd og reiknar fjölda tengdra svæða (bls. 10) í henni.
Himage img {“pcb”};
HRegion svæði = img.Threshold(0, 122);
Hlong numRegions = region.Connection().CountObj();
std::cout << “Fjöldi svæða: ” << numRegions << '\n';
Fyrir forkröfur og ítarlega gönguferð, vinsamlegast sjá forritarahandbók, Part 2, A First Example.
HALCON/.NET
C# og Visual Basic .NET nota HALCON í gegnum .NET viðmótið.
Á hliðstæðan hátt og C++ eru tveir stíll forritunar í boði: málsmeðferð og hlutbundin. Fyrir málsmeðferðarstílinn veitir flokkurinn HOperatorSet alla HALCON rekstraraðila, þar sem HObject er notað til að meðhöndla táknræn gögn og HTuple er notað til að stjórna gögnum. Fyrir hlutbundinn stíl eru flokkar eins og HDataCode2d, HMeasure eða HShapeModel veitt fyrir miðlæga virkni. Að auki eru námskeið fyrir helgimyndagögn, td HImage eða HRegion, í boði.
Example
Eftirfarandi kóði les mynd og reiknar fjölda tengdra svæða (bls. 10) í henni.
HImage img = new HImage(“pcb”);
HRegion svæði = img.Threshold(0d, 122d);
int numRegions = region.Connection().CountObj();
Console.WriteLine(“Fjöldi svæða: ” + numRegions);
Fyrir forkröfur og ítarlega gönguferð, vinsamlegast sjá forritarahandbók, Part 3, A First Example.
Myndatökuviðmót
Myndatökuviðmót HALCON mynda brú á milli hugbúnaðar sem framleiðandi myndtökutækisins gefur og HALCON. Þau mynda sameiginlegt, almennt viðmót sem aðeins krefst lítið sett af rekstraraðilum. Vinsamlegast skoðaðu lausnahandbók II-A fyrir nákvæmar upplýsingar um þetta efni.
Eins og er, útvegar HALCON tengi fyrir meira en 50 rammatökuvélar og hundruð iðnaðarmyndavéla í formi rafrænna hleðslubókasafna (Windows: DLLs; Unix-lík kerfi: sameiginleg bókasöfn). Bókasafnsnöfn byrja á forskeytinu hAcq; söfnin sem enda á viðskeytinu xl eru notuð af HALCON XL.
Vinsælustu viðmótin byggð á iðnaðarstöðlum eru þegar sett upp ásamt HALCON bókasöfnunum. Viðbótarviðmót, sem og nýjustu útgáfur af viðmótum sem þegar eru meðfylgjandi er hægt að hlaða niður undir https://www.mvtec.com/products/interfaces. HALCON myndatökuviðmót geta breyst oftar en HALCON bókasafnið sjálft. Ein ástæðan fyrir þessu er sú að MVTec þróar stöðugt ný viðmót; ennfremur, ef hugbúnaður frá framleiðendum myndtökutækja breytist, td ef nýir eiginleikar eru samþættir, verða samsvarandi HALCON viðmót aðlöguð. Vinsamlega skoðaðu einnig tilvísun myndatökuviðmótsins til að fá heildarlista yfir studd myndatökuviðmót.
Þegar þú hefur sett upp myndatökutækið þitt, þarftu aðeins að gera til að fá aðgang að því frá HALCON að hringja í símafyrirtækið open_framegrabber, tilgreina nafn myndtökuviðmótsins og nokkrar viðbótarupplýsingar, td varðandi tengda myndavél. Síðan er hægt að grípa myndir með því að hringja í símafyrirtækið grab_image (eða grab_image_async).
I / O tengi
HALCON býður upp á tengi fyrir nokkur I/O tæki til að gera gagnaöflun kleift. Þessi viðmót eru fáanleg sem virk hleðanleg bókasöfn (Windows: DLLs; Unix-lík kerfi: sameiginleg bókasöfn). Bókasafnsnöfn byrja á forskeytinu hio; söfnin sem enda á viðskeytinu xl eru notuð af HALCON XL.
HALCON I/O tækjaviðmótin veita samræmdan aðgang að mismunandi I/O tækjum með því að nota lítið sett af rekstraraðilum. Eftir að þú hefur sett upp I/O tækið þitt er tenging komið á með því að nota símafyrirtækið open_io_device, sem tilgreinir heiti I/O tækisins og, valfrjálst, nokkrar tækissértækar færibreytur. Þegar tengingunni hefur verið komið á er hægt að opna flutningsrás með því að hringja í open_io_channel. Til að lesa og skrifa gildi á þessari rás, notaðu rekstraraðilana read_io_channel og write_io_channel, í sömu röð.
Vinsamlegast athugaðu að HALCON I/O tæki tengi geta breyst oftar en HALCON bókasafnið sjálft. Þú getur fundið nýjustu upplýsingarnar ásamt niðurhalanlegum viðmótum (þar á meðal skjöl) undir https://www.mvtec.com/products/interfaces. Vinsamlegast skoðaðu einnig I/O Device Interface Reference til að fá heildarlista yfir studd I/O tæki tengi.
Hvernig á að þróa forrit
Við mælum með því að þú byrjir á hraðri frumgerð í HDevelop, gagnvirka þróunarumhverfi HALCON vélsjónasafnsins. Þú getur notað HDevelop til að finna ákjósanlega rekstraraðila og færibreytur til að leysa myndgreiningarverkefnið þitt. Eftir að hafa þróað HDevelop forrit í samræmi við tilteknar kröfur þarf að þýða það yfir í lokaumhverfi þess. Fyrir þetta geturðu valið á milli eftirfarandi þriggja aðferða, allt eftir óskum þínum:
- Byrja frá byrjun: Að skrifa forritið þitt frá grunni þýðir að þýða HDevelop kóðann þinn yfir á markforritunarmálið (C++, Python…) handvirkt. Eins og áður hefur komið fram geta nafnavenjur rekstraraðila, heiti flokka o.s.frv., verið mismunandi milli forritunarmála. Skoðaðu HALCON Operator Reference til að fá HALCON rekstraraðila undirskriftir fyrir hvert studd forritunarmál. Fyrir upplýsingar um hvernig á að búa til forrit á viðkomandi marktungumáli, vinsamlegast lestu forritarahandbókina.
- Flytja út HDevelop kóða: Þýddu HDevelop kóðann þinn sjálfkrafa yfir á markforritunarmálið með því að nota kóðaútflutning HDevelop.
- Flytja út bókasafnsverkefni: Bókasafnsútflutningur HDevelop býr til verkefnamöppu sem er tilbúin til notkunar, þar á meðal umbúðakóða á markmálinu og CMake file að byggja verkefnið upp. Bókasafnsútflutningur HDevelop notar HDevEngine, bókasafn sem virkar sem túlkur. HDevEngine gerir þér kleift að keyra HDevelop forrit eða verklag beint úr forriti sem skrifað er í C++ eða hvaða tungumáli sem er sem getur samþætt .NET hluti. Þannig þarftu ekki að setja saman allt forritið aftur þegar þú gerir breytingar á HDevelop kóðanum.
Auðvitað geturðu notað HDevEngine án þess að nota bókasafnsútflutningsaðgerð HDevelop. Hvernig á að nota HDevEngine er lýst í smáatriðum í forritarahandbókinni, hluta 6 (Notkun HDevEngine).
HDevelop
Við skulum líta fyrst á HDevelop. Mynd 3.1 sýnir notendaviðmót HDevelop, eftir að forrit hefur verið hlaðið inn og keyrt að hluta.
Sjálfgefið er að þessir gluggar séu sýnilegir, sem eru einnig nauðsynlegir til að þróa með HDevelop:
- Grafísk gluggi Sýnir (millistig) niðurstöður, nefnilega táknræn gögn (síðu 10) eins og myndir, svæði og XLD.
- Forritagluggi Þetta er þar sem þú slærð inn forritskóðann þinn, með því að nota kerfisstjóra (síðu 10) til að fá aðgang að myndvinnsluaðferðum HALCON.
- Variable Window Sýnir allar breytur, þ.e. táknrænar breytur og stýribreytur. Táknrænar breytur innihalda táknræn gögn (bls. 10) og stjórnbreytur innihalda stjórngögn (bls. 10).
Ítarlegar upplýsingar um HDevelop er að finna í HDevelop notendahandbókinni. Kennslumyndböndin okkar bjóða einnig upp á góða kynningu á HDevelop:
- HDevelop kennsluefni 01: GUI og siglingar
- HDevelop Kennsla 02: Breytur
- HDevelop kennsluefni 03: Sjónræn

Mynd 3.1: Notendaviðmót HDevelop.
Example Dagskrá
Nú þegar þú hefur kynnt þér notendaviðmót HDevelop og grunnhugtök HALCON (síðu 9), skulum við þróa C++ forrit með því að nota bókasafnsútflutningsaðferðina.
Til viðbótar við eftirfarandi skref-fyrir-skref leiðbeiningar, mælum við með að þú horfir á kennslumyndböndin okkar: Samþættu HDevelop kóða í C++ forrit með því að nota Library Project Export
Settu HDevelop kóða inn í C# forrit með því að nota Library Project Export
Myndböndin sýna útflutning bókasafnsins og veita frekari bakgrunnsupplýsingar um efnið.
Búðu til frumgerð í HDevelop
Verkefni eftirfarandi frvample er að lesa mynd og telja fjölda tengdra svæða það það.
- Opnaðu HDevelop og sláðu inn eftirfarandi kóða í forritagluggann:
read_image (Mynd, 'pcb')
þröskuldur (mynd, svæði, 0, 122)
tenging (svæði, tengd svæði)
count_obj (Connected Regions, Number) - Prófaðu forritið þitt með því að smella á Run á tækjastikunni eða ýta á F5.
Til að samþætta þennan HDevelop kóða auðveldlega í raunverulegt forrit, hyljum við vélsjónhlutann í staðbundið verklag.
- Auðkenndu eftirfarandi kóðalínur: þröskuldur (Mynd, Region, 0, 122) tenging (Region, ConnectedRegions) count_obj (ConnectedRegions, Number)
- Hægrismelltu til að opna samhengisvalmyndina.
- Veldu Búa til nýtt verklag.
- Nefndu það count_regions.
- Veldu færibreytur og breyttu Valkerfi í Fyrst inn, síðast út.
- Staðfestu með OK.
- Vistaðu HDevelop forritið þitt sem hdev_count_regions.hdev
Undirbúa Visual Studio Project
Í þessu frvampVið munum nota Visual Studio 2019. 1
- Búðu til tómt C++ Windows Console verkefni og nefndu það vs_count_regions. Vinsamlega virkjaðu valkostinn Settu lausn og verkefni í sömu möppu. 2
- Bættu við C++ uppruna file (Valmyndarverkefni Bæta við nýjum hlut... C++ File) og nefndu það vs_count_regions.cpp.
- Veldu lausnarvettvang x64 úr fellivalmyndinni á tækjastikunni.
- Opnaðu verkefniseiginleika þína (Valmynd Project vs_count_regions Properties…) og gerðu eftirfarandi stillingar:
- Veldu C/C++ General og bættu við eftirfarandi viðbótarmöppum fyrir Include:$(HALCONROOT)\include;$(HALCONROOT)\include\halconcpp;
- Veldu Linker General og bættu við eftirfarandi viðbótarbókasafnsskrá:$(HALCONROOT)\lib\$(HALCONARCH);
- Veldu Linker Input og bættu við eftirfarandi viðbótarháðum: halconcpp.lib;hdevenginecpp.lib;
Flytja út bókasafnsverkefni
Næst flytjum við út HDevelop forritið okkar hdev_count_regions.hdev í Visual Studio verkefnamöppuna okkar.
- Opnaðu áður búið til HDevelop forrit hdev_count_regions.hdev.
- Opið File Flytja út bókasafnsverkefni...
- Gerðu eftirfarandi stillingar:
- Inntak file: Núverandi dagskrá
- Markmál: C++
- Heiti verkefnis: hdev_count_regions
- Staðsetning verkefnis: Veldu staðsetningu Visual Studio verkefnisins okkar vs_count_regions.
- Nafnarými: hdev_count_regions
- Staðfestu með Export.
Nú ætti Visual Studio verkefnamöppan þín vs_count_regions að innihalda að minnsta kosti eftirfarandi gögn:
- vs_count_regions.cpp (Heimild File)
- vs_count_regions.sln (lausn)
- hdev_count_regions (mappa frá HDevelop Export)
- cmgerð
- res_ hdev_ count_ svæði
- hdev _ count_ svæði. hdev
- heimild
- hdev_count_regions.cpp
- hdev_count_regions.h
- CMakeLists.txt
Samþættu bókasafnsverkefni í Visual Studio
Að lokum verðum við að samþætta HDevelop forritið í Visual Studio verkefninu okkar.
- Opnaðu Visual Studio Project.
- Opnaðu Project Add Existing Item… og veldu C++ file hdev_count_regions.cpp og hausinn file hdev_count_regions.h, búin til af HDevelop's Library Export. (The files eru staðsett í möppunni hdev_count_regions source.)
- Sláðu inn eftirfarandi kóða í vs_count_regions.cpp:
#innihalda
#include „HalconCpp.h“
#include „hdev_count_regions/source/hdev_count_regions.h“
int main()
{
HalconCpp::HImage Image(“pcb”);
hdev_count_regions::SetResourcePath(“hdev_count_regions/res_hdev_count_regions”);
HalconCpp::HTuple Number{};
hdev_count_regions::count_regions(Mynd, &Númer);
std::cout << “Fjöldi svæða: ” << Number.L() << '\n';
} - Keyra forritið. → Stjórnborð opnast sem sýnir niðurstöðuna 'Fjöldi svæða: 43'.
Hvernig á að halda áfram
Til að kafa dýpra í HALCON bjóðum við upp á frekari skjöl og stuðning.
- HDevelop Example Forrit
HALCON býður upp á mikið sett af tdampLe forrit, ekki aðeins fyrir HDevelop heldur einnig fyrir mismunandi forritunarmál. Þessir fyrrvamples er að finna í möppunni sem táknuð er með umhverfisbreytunni % HALCONEXAMPLES% eða, ef breytan er ekki stillt, í undirskránni tdamples af möppunni sem þú hefur sett HALCON upp í.
Til að opna HDevelop exampí forritinu, veldu valmyndina File Skoðaðu HDevelop Exampforritin…. Fyrir byrjendur mælum við með að velja fyrrverandiample úr flokknum Umsóknarsvæði. - Þjónusta og stuðningur
Okkar websíða https://www.mvtec.com/services-support býður upp á margvíslegan stuðning, tdamples kennslumyndbönd, upplýsingar um vinnustofur og þjálfun, þróunarhornið sem gefur ráð og brellur og margt fleira. - HALCON skjöl
Skjölin veita mikið af upplýsingum, allt frá byrjendaefni til sérfræðiþekkingar. Til dæmisample, lausnaleiðbeiningarnar okkar lýsa vélsjónaraðferðum og hvernig á að beita þeim í HDevelop. Góður upphafspunktur er Solution Guide I sem kynnir þér helstu vélsjónaraðferðir.
Yfirview af öllum handbókum með stuttri lýsingu er að finna á inngangssíðu skjala.
Skjöl / auðlindir
![]() |
HALCON 21.11 Framvinda [pdfNotendahandbók 21.11 Framsókn, 21.11, Framsókn |





