I-HALCON 21.11 Inqubekelaphambili

Ukufinyelela okusheshayo ekusebenzeni kwe-HALCON, Inguqulo 21.11.0.0
Wonke Amalungelo Agodliwe. Ayikho ingxenye yalolu shicilelo okumele ikhiqizwe kabusha, igcinwe ohlelweni lokubuyisa, noma idluliselwe nganoma iyiphi indlela noma nganoma iyiphi indlela, ngogesi, ngomshini, ngokwenziwa amakhophi, ngokurekhoda, noma ngenye indlela, ngaphandle kwemvume ebhalwe phansi yangaphambili yomshicileli.
Copyright © 2003-2021 yi-MVTec Software GmbH, München, Germany
Ivikelwe amalungelo obunikazi alandelayo: 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. Amanye amalungelo obunikazi alindile.
I-Microsoft, Windows, Windows Server 2008/2012/2012 R2/2016, Windows 7/8/8.1/10, Microsoft .NET, Visual C++, kanye ne-Visual Basic izimpawu zokuthengisa noma izimpawu zokuthengisa ezibhalisiwe ze-Microsoft Corporation.
I-Linux wuphawu lokuthengisa lwe-Linus Torvalds.
I-macOS ne-OpenCL yizimpawu zokuthengisa ze-Apple Inc.
I-NVIDIA, i-CUDA, i-cuBLAS, ne-cuDNN izimpawu zokuthengisa noma izimpawu zokuthengisa ezibhalisiwe ze-NVIDIA Corporation.
I-OpenGL wuphawu lokuthengisa lwe-Silicon Graphics, Inc.
Zonke ezinye izimpawu zokuthengisa eziqashelwa ezweni lonke nasemhlabeni jikelele namagama okuhweba ayaziwa ngalokhu.
Ulwazi olwengeziwe mayelana ne-HALCON lungatholakala ku: http://www.halcon.com/
Mayelana Nale Manuwali
Le manuwali ikwethulela ku-HALCON. Ihloselwe abaqalayo ngaphandle kolwazi lwangaphambili lwe-HALCON.
Le manuwali ingasetshenziswa futhi njengenkomba yereferensi kwamanye amabhukwana we-HALCON, njengoba iwaxhuma ngezihloko ezilandelayo:
- Ifaka i-HALCON (ikhasi 7)
Lesi sahluko sethula i-MVTec Software Manager (SOM). - I-HALCON Architecture (ikhasi 9)
Isizinda esithile setiyetha, esidingekayo ukuze kuqondwe ukuthi iyini i-HALCON nokuthi isebenza kanjani. - Uzithuthukisa kanjani izinhlelo zokusebenza (ikhasi 15)
Lesi sahluko sichaza izindlela ezintathu eziyisisekelo zokuthuthukisa ne-HALCON futhi sikuqondisa kuhlelo lokuqala lwe-example. - Ungaqhubeka Kanjani (ikhasi 19)
Lesi sahluko sibhekisela emithonjeni eyengeziwe yolwazi.
Ifaka i-HALCON
Kubasebenzisi be-Linux kanye ne-Windows, sincoma ukuthi ulande futhi ufake i-HALCON nge-MVTec Software Manager (SOM). I-SOM iyimenenja yokufaka yamaphakheji esofthiwe. Inikeza ukufinyelela ku-cata-log ekude yemikhiqizo, futhi isekela, phakathi kwezinye izici, ukulanda nokufakwa kwamaphakheji. Isinyathelo ngesinyathelo isingeniso sendlela yokufaka i-HALCON nge-SOM singatholakala kumhlahlandlela wokufaka.
I-HALCON Architecture
Izakhiwo eziyisisekelo ze-HALCON zivezwe kumfanekiso 2.1. Ingxenye eyinhloko umtapo wokucubungula izithombe, oqukethe opharetha abangaphezu kuka-2000. Ungakwazi futhi ukuthuthukisa ama-opharetha akho ngendlela ebizwa ngokuthi amaphakheji e-ex-tension (ikhasi 11). Usebenzisa ama-opharetha kuhlelo lwakho lokusebenza ngezisetshenziswa zolimi (ikhasi 11) njenge-HALCON/C++ noma i-HALCON/Python. Lawa amalabhulali avumela ukusetshenziswa okuqondile kwabasebenzisi kusitayela sohlelo esijwayelekile sezilimi ezihlukene zokuhlela.

Umfanekiso 2.1: Izakhiwo eziyisisekelo ze-HALCON.
Ukuze uthole ukufinyelela kwamadivayisi wokutholwa kwezithombe, i-HALCON ihlinzeka ngezindawo zokuthola izithombe (ikhasi 13) ezikuvumela ukuthi usebenzise amadivayisi wokutholwa ahluke kakhulu ngendlela efanayo. Amalabhulali aqukethe ukusetshenziswa okuqondene nedivayisi alayishwa ngamandla uma kudingeka. Ngendlela efanayo, amadivaysi e-I/O afinyelelwa ngezixhumi ezibonakalayo ze-I/O eziqondene nedivayisi (ikhasi 13).
Ama-operators
Noma kunini lapho kusetshenziswa noma yiluphi uhlobo lokusebenza kusukela kulabhulali ye-HALCON, kwenziwa ngo-opharetha. Iningi lazo lihlanganisa izindlela eziningi, ezikhethwa ngamapharamitha. Uhlu olugcwele lwabo bonke opharetha lungatholakala ku-HALCON Operator Reference etholakala ku-HDevelop, .NET, Python, C++, kanye ne-syntax ye-C. Izici ezibalulekile zabasebenzisi yilezi:
- Abukho isigaba phakathi kwama-opharetha. Kusukela kuphuzu lezakhiwo zesoftware ye view, bonke opharetha basezingeni elifanayo.
- Yiqiniso, kukhona amaqembu anengqondo opharetha. Okwesiboneloample, lokhu kungabonwa amakilasi anikezwa i-C++ kanye ne-.NET, lapho opharetha abacubungula uhlobo olufanayo lwedatha kuyimisebenzi yamalungu ezigaba ezihambisanayo.
- Ukuklanywa kwama-opharetha kulandela imithetho yezakhiwo ezivulekile. Ngakho-ke, ungakha ama-opharetha akho futhi ngaleyo ndlela wandise i-HALCON (bona isigaba 2.2). Imanuwali Yomhleli Wephakheji Yesandiso iqukethe imininingwane enemininingwane mayelana nokwelula ilabhulali yomsebenzisi.
- Ama-opharetha amaningi angenza ukusetshenziswa okusobala kokufana okuzenzakalelayo, okuvumela indlela elula yokusheshisa uhlelo lapho usebenzisa izithombe ezinkulu ku-multi-processor noma ikhompyutha eyinhloko. Ulwazi oluningiliziwe ngohlelo oluhambisanayo lungatholakala kumbhalo wobuchwepheshe we-Parallel Programming, kanye nakuMhlahlandlela wabaSebenzisi bohlelo.
- Ama-opharetha anemithetho emisiwe yoku-oda amapharamitha okokufaka nokukhiphayo: uphawu lokufaka, uphawu lokukhiphayo, ukulawula okokufaka, nokulawula okukhiphayo (bona isigaba 2.1.1). Akuwona wonke amaqembu angase adingeke ku-opharetha othile. Ngokuvamile, imingcele yokufaka yama-opharetha ayishintshiwe, okuholela ku-semantics ecacile nelula. Kukhona okuhlukile okumbalwa kuphela kulo mklamo, isb, set_grayval, overpaint_gray, kanye ne-overpaint_region.
Amapharamitha kanye Nezakhiwo Zedatha
I-HALCON inezinhlobo ezimbili eziyisisekelo zamapharamitha: idatha yesithonjana nedatha yokulawula. Izithombe, izifunda, nama-XLD (Incazelo Yomugqa Owengeziwe) ayingxenye yedatha yesithonjana.
Izithombe aqukethe ikakhulukazi amashaneli, okungukuthi, ama-matric aqukethe amanani amaphikseli. Zonke iziteshi zesithombe zinosayizi ofanayo. Ukuze uthole ulwazi oluningiliziwe mayelana namaphikseli namashaneli, sicela ufunde isahluko "Isithombe" Sereferensi Yomqhubi we-HALCON.
Esithombeni ngasinye, lokho okubizwa ngokuthi isifunda sentshisekelo (ROI) icacisa ukuthi iyiphi ingxenye yesithombe ecutshungulwayo. I-ROI ingachazwa ngendlela evumelana nezimo kakhulu (kusuka kunxande olula ukuya kusethi yamaphikseli angaxhumekile). Ukuze uthole imininingwane mayelana nokuphathwa kwe-ROI bheka Umhlahlandlela Wokuxazulula I, Isifunda Sesithakazelo ekhasini 27.
Izifunda ayisethi yamaphikseli. Amaphikseli esifunda awadingi ukuxhunywa. Ngisho neqoqo elingafanele lamaphikseli lingaphathwa njengesifunda esisodwa. Ngoxhumo lomsebenzisi isifunda singahlukaniswa sibe izifunda zaso ezixhunyiwe, okungukuthi, izingxenye ezihlanganisa amaphikseli axhunyiwe.
Ama-XLD ihlanganisa yonke idatha esekelwe ku-contour ne-polygon. Ama-opharetha anembile e-Subpixel afana nama-edges_sub_pix abuyisela amakhonsathi njengedatha ye-XLD. I-contour iwukulandelana kwamaphoyinti okulawula e-2D, axhunywe ngemigqa. Ngokujwayelekile, ibanga eliphakathi kwamaphoyinti okulawula licishe libe yiphikseli eyodwa. Izinto ze-XLD ziqukethe, ngaphandle kwamaphoyinti okulawula, lokho okubizwa ngokuthi izimfanelo zendawo nezomhlaba jikelele. Isib esijwayelekileampama-les for these are, isb, the end ampubukhulu bephoyinti lokulawula noma amapharamitha wokuhlehla kwengxenye yekhonta. Ngaphandle kokukhishwa kwezinto ze-XLD, i-HALCON isekela ukucutshungulwa okwengeziwe. ExampI-les yalokhu ukukhethwa kwamakhonsathi okususelwe kububanzi besici obunikeziwe bokuhlukaniswa kwekhonsathi ibe imigqa, ama-arcs, amapholigoni noma ama-parallels.
Idatha yokulawula ihlanganisa izibambo nezinhlobo zedatha eziyisisekelo njengenombolo ephelele, yangempela, iyunithi yezinhlamvu.
Izibambo izinkomba zezakhiwo zedatha eziyinkimbinkimbi, isb, uxhumano esixhumi esibonakalayo sokutholwa kwesithombe noma imodeli yokumatanisa okusekelwe kumumo. Ngenxa yokusebenza kahle nezizathu zokuphepha kwedatha, akusona sonke isakhiwo kodwa isibambo kuphela esidluliswayo phakathi kwama-opharetha. Izibambo ngamavelu omlingo akumele ashintshwe futhi angahluka kusukela ekusebenziseni ukuya ekusetshenzisweni kanye nenguqulo nenguqulo. Asulwa ngokuzenzakalela uma zonke izithenjwa sezilotshiwe. Examplapho kusetshenziswa khona izibambo amawindi ezithombe, files, amasokhethi, izixhumanisi zokutholwa kwesithombe, i-OCR, i-OCV, ukulinganisa, nokumatanisa.
Amaphakheji Esandiso
I-HALCON ingase inwetshwe opharetha abasha. Nakuba i-HALCON isivele iqukethe isethi eningi yabaqhubi bemisebenzi ehlukahlukene, ungase ufise ukusebenzisa ama-opharetha amasha, isb, ukufinyelela i-hardware ekhethekile noma ukusebenzisa enye i-algorithm. Ukwenza kanjalo, i-HALCON inikeza i-Extension Package Interface, evumela ukuhlanganiswa kwama-opharetha amasha (okusetshenziswa ku-C) ngendlela ebizwa ngokuthi amaphakheji esandiso. I-Extension Package Interface iqukethe izindlela ezimbalwa ezichazwe ngaphambilini namamakhro okuphatha kalula idatha yesithombe nezinto zenkumbulo ku-C. Uma isisebenzisi esisha sesihlanganiswe ngempumelelo, singasetshenziswa njenganoma yimuphi omunye u-opharetha we-HALCON. Imanuwali Yomhleli Wephakheji Yesandiso iqukethe imininingwane enemininingwane mayelana nokwelula ilabhulali yomsebenzisi.
Ulimi Interface
Njengoba kuboniswe emfanekisweni 2.1 ekhasini 9, i-HALCON ihlinzeka ngalokho okubizwa ngokuthi izixhumanisi zolimi. Lezi yizibopho zolimi lwendabuko, ezikuvumela ukuthi ushayele o-opharetha futhi usebenzise izinhlobo zedatha ye-HALCON ngokuqondile ngaphakathi kohlelo lwakho lokusebenza, kungaba i-Python, C, C++, noma i-.NET.
Ukuze uqale ukuthuthukiswa, sincoma ukuthi uqale uhlole eyodwa yama-ex alungele ukuqhutshwaample izinhlelo. Lapha, ungabona ukuthi iphrojekthi kumele imiswe kanjani nokuthi opharetha nezinhlobo zisetshenziswa kanjani.
Kulimi ngalunye, amagama ezinhlobo, izigaba, izimiso zokuqamba amagama zabasebenzisi, njll. kungase kwehluke ukuze kuhambisane nemithetho evamile esebenza olimini olukhethiwe. Amasiginesha ka-opharetha wezilimi zokuhlela ezisekelwayo abhalwe ku-HALCON Operator Reference.
I-HALCON/Python
I-interface ye-Python igqamile ngobulula bayo kanye nekhono layo lokwenza i-prototyping ngokushesha. Opharetha be-HALCON babizwa ngokuqondile njengemisebenzi ezimele, ngemva kokungenisa imojula ye-HALCON/Python. Qaphela futhi ukuthi amapharamitha o-opharetha ku-HALCON/Python ahlukaniswa abe amapharamitha omsebenzi (okokufaka) kanye namanani okubuyisela (okukhiphayo).
Example
Ikhodi elandelayo ifunda isithombe bese ibala inani lezifunda ezixhunyiwe (ikhasi 10) kuso.
img = ha.read_image('pcb')
isifunda = ha.threshold(img, 0, 122)
num_regions = ha.count_obj(ha.connection(isifunda))
phrinta(f'Inombolo Yezifunda: {num_regions}')
Ukuze uthole okufunekayo kanye nokuhamba ngemininingwane, sicela ubheke Umhlahlandlela Wohlelo, Ingxenye 4, I-Ex Yokuqala.ample.
I-HALCON/C
I-interface ye-C iyisixhumi esibonakalayo esilula kunazo zonke esisekelwa yi-HALCON. Umsebenzisi ngamunye umelwe umsebenzi owodwa noma emibili yomhlaba lapho igama lomsebenzisi nokulandelana kwepharamitha kufana nolimi lwe-HDevelop.
Example
Ikhodi elandelayo ifunda isithombe bese ibala inani lezifunda ezixhunyiwe (ikhasi 10) kuso.
Hobject img;
read_image(&img, “pcb”);
Isifunda se-Hobject;
umkhawulo(img, ®ion, 0, 122);
Izifunda_ezixhumene ne-hobject;
uxhumano(isifunda, &izifunda_ezixhunyiwe);
Hlong num_regions = 0;
count_obj(izifunda_ezixhunyiwe, &nenombolo_yezifunda);
printf(“Inombolo Yezifunda: %” PRIdPTR “\n”, num_regions);
Ukuze uthole okufunekayo kanye nokuhamba ngemininingwane, sicela ubheke Umhlahlandlela Wohlelo, Ingxenye 5, I-Ex Yokuqala.ample.
I-HALCON/C++
I-interface ye-C++ iyinkimbinkimbi kakhulu kune-interface ye-C. Lapha, i-advantagama-es ka-C++ kanye nohlelo olugxile entweni kuyasetshenziswa, okungukuthi, ukuguqulwa kohlobo oluzenzakalelayo, ukwakhiwa nokucekelwa phansi, noma ukuhlanganisa imisebenzi kanye nedatha yayo ibe amakilasi. Njengaku-C interface, imisebenzi yomhlaba wonke yomqhubi we-HALCON ngamunye inikezwa isitayela senqubo sokuhlela.
Example
Ikhodi elandelayo ifunda isithombe bese ibala inani lezifunda ezixhunyiwe (ikhasi 10) kuso.
I-HImage img{“pcb”};
HRegion region = img.Threshold(0, 122);
Hlong numRegions = region.Connection().CountObj();
std::cout << “Inani Lezifunda: ” << numRegions << '\n';
Ukuze uthole okufunekayo kanye nokuhamba ngemininingwane, sicela ubheke Umhlahlandlela Wohlelo, Ingxenye 2, I-Ex Yokuqala.ample.
I-HALCON/.NET
I-C# kanye ne-Visual Basic .NET zisebenzisa i-HALCON ngesixhumi esibonakalayo se-.NET.
Ngokufaniswa ne-C++, izitayela ezimbili zokuhlela zinikezwa: inqubo nokuqondiswa entweni. Ngesitayela senqubo, ikilasi le-HOperatorSet lihlinzeka ngawo wonke ama-opharetha we-HALCON, lapho i-HObject isetshenziselwa ukuphatha idatha yesithonjana futhi i-HTuple isetshenziselwa idatha yokulawula. Ngesitayela esigxile entweni, amakilasi afana ne-HDataCode2d, i-HMeasure, noma i-HShapeModel anikezwa ukusebenza okumaphakathi. Ngaphezu kwalokho, amakilasi edatha yesakhiwo sodumo, isb, HImage noma HRegion, ayatholakala.
Example
Ikhodi elandelayo ifunda isithombe bese ibala inani lezifunda ezixhunyiwe (ikhasi 10) kuso.
I-HImage img = i-HImage entsha ("pcb");
HRegion region = img.Threshold(0d, 122d);
int numRegions = region.Connection().CountObj();
I-Console.WriteLine(“Inombolo Yezifunda: ” + numRegions);
Ukuze uthole okufunekayo kanye nokuhamba ngemininingwane, sicela ubheke Umhlahlandlela Wohlelo, Ingxenye 3, I-Ex Yokuqala.ample.
I-Interface Yokutholwa Kwesithombe
Izixhumanisi zokutholwa kwesithombe ze-HALCON zakha ibhuloho phakathi kwesofthiwe ehlinzekwa umkhiqizi wedivayisi yokutholwa kwesithombe ne-HALCON. Zakha isixhumi esibonakalayo esivamile, esijwayelekile esidinga isethi encane yama-opharetha kuphela. Sicela ubheke Umhlahlandlela Wesixazululo II-A ukuze uthole imininingwane eyengeziwe ngalesi sihloko.
Njengamanje, i-HALCON ihlinzeka ngendawo yokusebenzelana yabathwebuli befreyimu abangaphezu kuka-50 namakhulu amakhamera ezimboni ngendlela yamalabhulali anamandla okulayisheka (iWindows: DLL; amasistimu afana ne-Unix: imitapo yolwazi eyabiwe). Amagama omtapo wolwazi aqala ngesiqalo esithi hAcq; amalabhulali agcina ngesijobelelo xl asetshenziswa yi-HALCON XL.
Izindawo zokusebenzelana ezisetshenziswa kakhulu ezisekelwe kumazinga emboni sezivele zifakiwe kanye namalabhulali e-HALCON. Izixhumi ezibonakalayo ezengeziwe, kanye nezinguqulo zakamuva zezindawo ezivele zifakiwe zingalandwa ngaphansi https://www.mvtec.com/products/interfaces. Ukuxhumana kokutholwa kwesithombe kwe-HALCON kungase kushintshe kaningi kunelabhulali ye-HALCON ngokwayo. Esinye isizathu salokhu ukuthi i-MVTec ithuthukisa ngokuqhubekayo izixhumanisi ezintsha; ngaphezu kwalokho, uma isofthiwe ehlinzekwa abakhiqizi bamadivayisi wokutholwa kwezithombe ishintsha, isb, uma izici ezintsha zihlanganisiwe, izixhumanisi ze-HALCON ezihambisanayo zizoshintshwa. Sicela futhi ubhekisele kusithenjwa Sokutholwa Kwesithombe sohlu olugcwele lwezixhumanisi zokutholwa kwezithombe ezisekelwayo.
Uma usufake ngempumelelo idivayisi yakho yokutholwa kwesithombe, okudingeka ukwenze ukuze ufinyelele kuyo ukusuka ku-HALCON ukushayela i-opharetha i-open_framegrabber, ucacise igama lesixhumi esibonakalayo sokutholwa kwesithombe kanye nolunye ulwazi olwengeziwe, isb, mayelana nekhamera exhunyiwe. Bese, izithombe zingabanjwa ngokushayela u-opharetha ukuthi grab_image (noma grab_image_async).
I/O Interfaces
I-HALCON ihlinzeka ngokusebenzelana kwamadivayisi ambalwa e-I/O ukuze kunikwe amandla ukutholwa kwedatha. Lokhu kuxhumana kuyatholakala njengamalabhulali anamandla okulayisheka (iWindows: DLLs; amasistimu afana ne-Unix: imitapo yolwazi eyabiwe). Amagama omtapo wolwazi aqala ngesiqalo esithi hi; amalabhulali agcina ngesijobelelo xl asetshenziswa yi-HALCON XL.
Izixhumanisi zedivayisi ye-HALCON I/O zinikeza ukufinyelela okuhlangene kumadivayisi ahlukene e-I/O kusetshenziswa isethi encane yabaqhubi. Ngemva kokufaka idivayisi yakho ye-I/O, uxhumano luyasungulwa kusetshenziswa isisebenzisi esivulekile_io_device, sicacisa igama lesixhumi esibonakalayo sedivayisi ye-I/O futhi, ngokuzikhethela, amanye amapharamitha aqondene nedivayisi. Uma uxhumano selumisiwe, isiteshi sokudlulisela singavulwa ngokushayela i-open_io_channel. Ukuze ufunde futhi ubhale amanani kulesi siteshi, sebenzisa i-opharetha i-read_io_channel ne-write_io_channel, ngokulandelana.
Sicela uqaphele ukuthi izixhumanisi zedivayisi ye-HALCON I/O zingashintsha kaningi kunelabhulali ye-HALCON ngokwayo. Ungathola ulwazi lwakamuva kanye nezisetshenziswa ezilandekayo (okuhlanganisa nemibhalo) ngaphansi https://www.mvtec.com/products/interfaces. Sicela futhi ubhekisele ku-I/O Device Interface Reference ukuze uthole uhlu olugcwele lwezindawo ezisekelwayo zedivayisi ye-I/O.
Uzithuthukisa kanjani izinhlelo zokusebenza
Sincoma ukuthi uqale nge-prototyping esheshayo ku-HDevelop, indawo yokuthuthukisa esebenzisanayo yelabhulali yombono womshini we-HALCON. Ungasebenzisa i-HDevelop ukuthola ama-opharetha alungile namapharamitha ukuze uxazulule umsebenzi wakho wokuhlaziya isithombe. Ngemuva kokwenza uhlelo lwe-HDevelop ngokwezidingo ezinikeziwe, kufanele luhunyushwe endaweni yalo yokugcina. Ngalokhu, ungakhetha phakathi kwalezi zindlela ezintathu ezilandelayo, kuye ngokuncamelayo:
- Qala kusuka ekuqaleni: Ukubhala uhlelo lwakho kusukela ekuqaleni kusho ukuhumusha ikhodi yakho ye-HDevelope olimini lokuhlela oluqondiwe (C++, Python…) ngesandla. Njengoba kushiwo ngaphambili, izivumelwano zokuqamba amagama opharetha, amagama amakilasi, njll., zingahluka phakathi kwezilimi zokuhlela. Bheka i-HALCON Operator Reference ukuze uthole amasiginesha ka-opharetha we-HALCON ngolimi ngalunye olusekelwayo lohlelo. Ukuze uthole ulwazi lokuthi uzenza kanjani izinhlelo zokusebenza ngolimi olufunayo, sicela ufunde Umhlahlandlela Womhleli.
- Thekelisa Ikhodi Yokuthuthukisa: Humusha ikhodi yakho ye-HDevelop uyiyise olimini lokuhlela oluqondiwe ngokuzenzakalela usebenzisa ikhodi yokuthekelisa ye-HDevelop.
- Khipha Iphrojekthi Yelabhulali: Ukuthunyelwa kwelabhulali ye-HDevelop kukhiqiza ifolda yephrojekthi elungele ukusetshenziswa, okuhlanganisa ikhodi yokugoqa ngolimi okuqondiwe kulo kanye ne-CMake. file ukwakha iphrojekthi. Ukuthunyelwa kwelabhulali ye-HDevelop isebenzisa i-HDevEngine, umtapo wezincwadi osebenza njengomhumushi. I-HDevEngine ikuvumela ukuthi usebenzise ngokuqondile izinhlelo ze-HDevelop noma izinqubo ezivela kuhlelo lokusebenza olubhalwe nge-C++ nanoma yiluphi ulimi olungahlanganisa izinto ze-.NET. Ngakho-ke, akudingekile ukuthi uphinde uhlanganise lonke uhlelo lokusebenza lapho wenza izinguquko kukhodi ye-HDevelop.
Vele, ungasebenzisa i-HDevEngine ngaphandle kokusebenzisa umsebenzi wokuthekelisa womtapo wezincwadi we-HDevelop. Indlela yokusebenzisa i-HDevEngine ichazwe ngokuningiliziwe kuMhlahlandlela Wokuhlela, Ingxenye 6 (Ukusebenzisa i-HDevEngine).
I-HD Thuthukisa
Ake siqale sibheke i-HDevelop. Umfanekiso 3.1 ubonisa ukusebenzisana komsebenzisi kwe-HDevelop, ngemva kokuba uhlelo selulayishiwe futhi ingxenye yalo seluqalisiwe.
Ngokuzenzakalelayo, lawa mawindi ayabonakala, nawo abalulekile ekuthuthukisweni nge-HDevelop:
- Imiphumela ye-Graphics Window Displays (emaphakathi), okuyidatha yesithonjana (ikhasi 10) njengezithombe, izifunda, nama-XLD.
- Iwindi Lohlelo Yilapho uthayipha khona ikhodi yakho yohlelo, usebenzisa opharetha (ikhasi 10) ukuze ufinyelele izindlela zokucubungula izithombe ze-HALCON.
- Iwindi Eliguquguqukayo Libonisa zonke izinto eziguquguqukayo, okuyizimpawu eziguquguqukayo neziguquguqukayo zokulawula. Okuguquguqukayo okuyisithonjana kuqukethe idatha yesithonjana (ikhasi 10) futhi okuguquguqukayo kokulawula kuqukethe idatha yokulawula (ikhasi 10).
Imininingwane enemininingwane mayelana ne-HDevelop ingatholakala ku-HDevelop User's Guide. Amavidiyo ethu okufundisa nawo anikeza isingeniso esihle ku-HDevelop:
- I-HDevelop Tutorial 01: I-GUI nokuzulazula
- I-HDevelop Tutorial 02: Okuguquguqukayo
- I-HDevelop Tutorial 03: Ukubona ngeso lengqondo

Umfanekiso 3.1: I-HDevelop's User Interface.
Example Uhlelo
Njengoba manje sewazisiwe ku-HDevelop User Interface kanye nemiqondo eyisisekelo ye-HALCON (ikhasi 9), masithuthukise uhlelo lwe-C++ sisebenzisa i-Library Export Approach.
Ukwengeza kule miyalo elandelayo yesinyathelo nesinyathelo, sincoma ukuthi ubuke amavidiyo ethu okufundisa: Hlanganisa ikhodi ye-HDThuthukisa kuhlelo lokusebenza lwe-C++ usebenzisa i-Library Project Export
Hlanganisa ikhodi yokuthuthukisa kuhlelo lokusebenza lwe-C# usebenzisa i-Library Project Export
Amavidiyo abonisa ukuthunyelwa komtapo wolwazi futhi anikeza ulwazi oluningi lwasemuva mayelana nesihloko.
Dala i-Prototype ku-HDevelop
Umsebenzi wesibonelo esilandelayoampI-le iwukufunda isithombe futhi ubale inani lezifunda ezixhunyiwe kuso.
- Vula i-HDevelop bese ufaka ikhodi elandelayo efasiteleni Lohlelo:
read_image (Isithombe, 'pcb')
umkhawulo (Isithombe, Isifunda, 0, 122)
uxhumano (Isifunda, Izifunda Ezixhumene)
count_obj (Izifunda Ezixhunyiwe, Inombolo) - Hlola uhlelo lwakho ngokuchofoza u-Run kubha yamathuluzi noma ngokucindezela u-F5.
Ukuze uhlanganise kalula le khodi ye-HDenze uhlelo lokusebenza lwangempela, sihlanganisa ingxenye yombono womshini enqubweni yendawo.
- Gqamisa imigqa yekhodi elandelayo: i-threshold (Isithombe, Isifunda, 0, 122) uxhumano (Isifunda, Izifunda Ezixhunyiwe) count_obj (Izifunda Ezixhunyiwe, Inombolo)
- Chofoza kwesokudla ukuze uvule imenyu yokuqukethwe.
- Khetha okuthi Dala Inqubo Entsha.
- Yisho count_regiions.
- Khetha Amapharamitha bese ushintsha Isikimu Sokukhetha sibe Okokuqala, Siphume.
- Qinisekisa ngokuthi KULUNGILE.
- Londoloza uhlelo lwakho lwe-HDevelop njenge-hdev_count_regions.hdev
Lungiselela iphrojekthi ye-Visual Studio
Kulesi example, sizosebenzisa i-Visual Studio 2019. 1
- Dala iphrojekthi ye-C++ Windows Console engenalutho futhi uyiqambe ngokuthi vs_count_regions. Sicela wenze kusebenze inketho Faka isisombululo kanye nephrojekthi kuhla lwemibhalo olufanayo. 2
- Engeza umthombo we-C++ file (Iphrojekthi Yemenyu Yengeza Into Entsha… C++ File) bese uyiqambe ngokuthi vs_count_regions.cpp.
- Khetha inkundla yesixazululo x64 kumenyu yokudonsela phansi kubha yamathuluzi.
- Vula izakhiwo zephrojekthi yakho (I-Menu Project vs_count_regions Properties…) bese wenza izilungiselelo ezilandelayo:
- Khetha i-C/C++ Okuvamile bese wengeza okulandelayo Faka Izikhombisi-ndlela:$(HALCONROOT)\include;$(HALCONROOT)\include\halconcpp;
- Khetha i-Linker General bese wengeza Uhla Lwemibhalo Lwelabhulali Olwengeziwe olulandelayo:$(HALCONROOT)\lib\$(HALCONARCH);
- Khetha Okokufaka Kwesixhumanisi bese wengeza okulandelayo Okuncike Ukuncika: halconcpp.lib;hdevenginecpp.lib;
Thumela Iphrojekthi Yelabhulali
Okulandelayo, sithekelisa uhlelo lwethu lwe-HDevelop hdev_count_regions.hdev kufolda yethu yephrojekthi ye-Visual Studio.
- Vula uhlelo lwe-HDevelop oludalwe ngaphambilini lwe-hdev_count_regions.hdev.
- Vula File Khipha Iphrojekthi Yelabhulali...
- Yenza izilungiselelo ezilandelayo:
- Okokufaka file: Uhlelo Lwamanje
- Ulimi oluqondiwe: C++
- Igama lephrojekthi: hdev_count_regions
- Indawo Yephrojekthi: Khetha indawo yephrojekthi yethu ye-Visual Studio vs_count_regions.
- Isikhala segama: hdev_count_regions
- Qinisekisa ngokuthi Thumela.
Manje, ifolda yakho yephrojekthi ye-Visual Studio vs_count_regions kufanele iqukathe okungenani idatha elandelayo:
- vs_count_regions.cpp (Umthombo File)
- vs_count_regions.sln (Isixazululo)
- hdev_count_regions (Ifolda evela ku-HDevelop Export)
- cmake
- izifunda_ ze-hdev_ count_
- hdev _ count_ izifunda. hdev
- umthombo
- hdev_count_regions.cpp
- hdev_count_regions.h
- CMakeLists.txt
Hlanganisa Iphrojekthi Yelabhulali ibe Isitudiyo Esibonakalayo
Okokugcina, kufanele sihlanganise uhlelo lwe-HDevelop kuphrojekthi yethu ye-Visual Studio.
- Vula i-Visual Studio Project.
- Vula Iphrojekthi Yengeza Into Ekhona... bese ukhetha i-C++ file hdev_count_regions.cpp kanye nesihloko file hdev_count_regions.h, idalwe i-HDevelop's Library Export. (The files atholakala kufolda ethi hdev_count_regions source.)
- Faka ikhodi elandelayo ku-vs_count_regions.cpp:
#faka
#faka phakathi i-“HalconCpp.h”
#faka phakathi okuthi “hdev_count_regions/source/hdev_count_regions.h”
int main()
{
I-HalconCpp ::Isithombe se-HImage(“pcb”);
i-hdev_count_regions::SetResourcePath(“hdev_count_regions/res_hdev_count_regions”);
I-HalconCpp::Inombolo ye-HTuple{};
hdev_count_regions::count_regions(Isithombe, &Number);
std::cout << “Inani Lezifunda: ” << Inombolo.L() << '\n';
} - Yenza uhlelo. → Ikhonsoli iyavula, ebonisa umphumela 'Inani lezifunda: 43'.
Ungaqhubeka Kanjani
Ukuze ungene ujule ku-HALCON, sinikeza eminye imibhalo nokusekelwa.
- I-HDDevelop Example Izinhlelo
I-HALCON inikeza isethi ebanzi yama-example izinhlelo, hhayi eze-HDevelop kuphela kodwa nezilimi zokuhlela ezihlukene. Lezi exampi-les ingatholakala kuhla lwemibhalo olukhonjwa ukuguquguquka kwemvelo % HALCONEXAMPLES% noma, uma okuguquguqukayo kungasethiwe, ku-subdirectory exampingxenye yefolda ofake kuyo i-HALCON.
Ukuvula i-HDevelop exampkuhlelo, khetha imenyu File Dlulisa amehlo ku-HDevelop Example Izinhlelo…. Kwabaqalayo, sincoma ukuthi ukhethe i-example kusuka esigabeni sendawo yohlelo lokusebenza. - Amasevisi Nokwesekwa
Eyethu webindawo https://www.mvtec.com/services-support inikeza ukwesekwa okuhlukahlukene, isiboneloampamavidiyo okufundisa, ulwazi mayelana nezinkundla zokucobelelana ngolwazi nokuqeqeshwa, ikhoneni lonjiniyela elihlinzeka ngamathiphu namasu, nokunye okuningi. - HALCON Amadokhumenti
Imibhalo inikeza ingcebo yolwazi, kusukela ezihlokweni ezisaqala ukuya olwazini lochwepheshe. Okwesiboneloample, Imihlahlandlela Yesixazululo yethu ichaza izindlela zokubona komshini nendlela yokuzisebenzisa ku-HDevelop. Iphuzu elihle lokuqala yi-Solution Guide I ekwazisa ngezindlela zokubona zomshini oyinhloko.
Kuphelileview yawo wonke amamanyuwali anencazelo emfushane angatholakala ekhasini lokufaka lemibhalo.
Amadokhumenti / Izinsiza
![]() |
I-HALCON 21.11 Inqubekelaphambili [pdf] Umhlahlandlela Womsebenzisi 21.11 Inqubekelaphambili, 21.11, Inqubekelaphambili |





