OpenCV 5.0.0

Avaldatud OpenCV 5.0.0 — suur väljalase avatud arvutinägemise ja pilditöötluse raamatukogust. Väljalase toimus 6. juunil 2026 ja on juba tunnustatud kui asjakohane projekti hoidlas GitHubis. OpenCV on vabalt saadaval Apache-2.0.

Väljalase on suunatud OpenCV üleminekule «klassikalisest arvutinägemise raamatukogust» kaasaegsemaks platvormiks CV/AI ülesannete jaoks: projekt puhastas vana API, ümber töötas närvivõrkude inferentsimooduli, laiendas ONNX-i toetust, lisas aluse VLM/LLM stsenaariumidele ning uuendas 3D/kalibreerimistehnikat. Arendajad kirjeldavad OpenCV 5.0 kui haru, mida peetakse nüüd samuti stabiilseks, ning uus funktsionaalsus jõuab peamiselt sinna.

Olulised muudatused

  • Uus DNN-inferentsimootor.
    DNN-modulis on uus mootori, mis eksisteerib koos vana metsaga. See töötab paremini dünaamiliste tensori vormide, alagruppide ja kaasaegsete ONNX-i võimalustega. Teatatud on üle 80% ONNX-i spetsifikatsiooni katvusest, samas kui OpenCV 4.x katvus oli alla 23%.
    See on tõenäoliselt väljaande peamine muudatus: OpenCV püüab saada mitte lihtsalt mudeleid ümbritseva kihina, vaid täis funktsionaalseks integreeritud inferentsimootoriks kaasaegsetele närvivõrkudele.

  • Mootori valimine mudeli laadimisel.
    cv::dnn::readNet() ja sellega seotud funktsioonidesse on lisatud parameeter ENGINE_AUTO. Vaikimisi proovib OpenCV esmalt uut mootorit ning ebaõnnestumise korral lülitub tagasi klassikalisele. Selle käitumist saab samuti määrata keskkonnamuutujaga OPENCV_FORCE_DNN_ENGINE: kasutada vana mootorit, uut, automaatset režiimi või ONNX Runtime'i. Vanad projektid ei pea kohe täielikult uuele mootorile üle minema, kuid uusi mudeleid saab järk-järgult sellele üle tuua.

  • Integratsioon ONNX Runtime'iga.
    OpenCV on nüüd võimalik ehitada koos ONNX Runtime'iga. Sel juhul kasutab OpenCV enda ONNX-parsijat ORT graafiku loomiseks, seega ei vaja see täielikku ONNX paketti. Ehitamiseks on ette nähtud CMake parameetrid -DWITH_ONNXRUNTIME=ON ja -DDOWNLOAD_ONNXRUNTIME=ON; NVIDIA GPU jaoks -DDOWNLOAD_ONNXRUNTIME_GPU=ON. See funktsioon on kasulik neile, kes vajavad GPU-inferenzit juba praegu, sest uus OpenCV DNN-mootor töötab praegu ainult CPU-l.

  • Toetatud vision-language mudelid.
    Uus DNN-mootor sisaldab tokeniseerimise, tähelepanu kihtide, dekodeerimisplokke, järeltöötlemist ja KV-vahemälu, mis on vajalikud VLM-mudelite käivitamiseks "karbist välja". Raamatukogu on ajalooliselt olnud seotud pilditöötlusega, kuid nüüd liigub see valdkonda, kus mudelid töötavad samaaegselt nii piltide kui ka tekstiga.

  • Uue DNN-mootori GPU-tugi ei ole veel valmis.
    Uus mootor OpenCV 5.0 töötab ainult CPU peal. Natiivset GPU tuge lubatakse lisada järgmistes väljaannetes; praegu soovitatakse GPU jaoks kasutada klassikalist mootorit või kokku pandud versiooni ONNX Runtime'i ja NVIDIA täitmisproovide abil. OpenCV 5.0 ei asenda ise spetsialiseeritud käitusaegu serveri või töölaua CUDA-infereerimiseks.

  • Vana Darkneti ja Caffe parserid on eemaldatud.
    Arendajad eemaldasid Darkneti ja Caffe parserid, kuna enamus mudeleid on juba ONNX-i üle viidud. TFLite jääb klassikalise mootori kaudu, uue mootori üleviimine on plaanis hiljem. OpenCV loobub vanadest formaatidest ja keskendub ONNX-ile peamise mudelite vahetusformaadina.

  • Suur puhastus aegunud API-st.
    OpenCV 1.x C API on eemaldatud: sellised funktsioonid nagu cvCreateMat() ja vanad struktuurid, nagu CvMat, ei kuulu enam põhisisu. Samuti eemaldati OpenVX tugi, G-API moodul viidi opencv_contrib'i ja sinna viidi ka klassikaline ML-moodul. Oluline muudatus vanade projektide jaoks, kuid see oli ammu vajalik: teek vabastab ennast aastatega kogunenud tehnilisest põhast.

  • Features2D on ümber nimetatud Features.
    Moodulit on laiendatud kaasaegsete tunnusvektorite jaoks närvivõrkudest. Põhivarasse jäid SIFT, ORB, FAST, GoodFeaturesToTrack ja MSER, vananenud detektorid ja descriptorid viidi opencv_contrib'i. Lisatud on ALIKED, DISK ja LightGlue vastendaja. OpenCV kohandub selgelt kaasaegsete töövoogudega, kus pilditunnuseid kaevandatakse üha enam mitte klassikaliste algoritmide, vaid närvivõrkude abil.

  • Uued andmetüübid Core'is.
    Lisatud on CV_16BF / cv::bfloat, CV_32U, CV_64U, CV_64S ja CV_Bool. Parandatud on ka N-dimensionaalsete massiivide, 1D-massiivide ja 0D-skalaari toe taset. LAPACK on nüüd alati saadaval: kui välist teeki ei ole, kogub OpenCV oma sisseehitatud minimaalse alamhulga. Need muudatused on olulised DNN, numbriliste algoritmide ja kaasaegsete andmevormingute ühilduvuse jaoks, kus bfloat16 ja laiendatud tüübid on üha enam levinud.

  • Pilditöötlust on kiirendatud.
    Imgproc-is on ümber töötatud warpAffine, warpPerspective ja remap. Tulemuslikkuse parandused ulatuvad 10% kuni üle 300%, olenevalt platvormist, pildi suurusest, andmetüübist ja operatsiooni lippudest.
    See ei puutu enam AI-moodulisse — sellised optimeerimised on otseselt olulised klassikaliste ülesannete jaoks: videosildid, stabiliseerimine, projektsioonimuutused ja andmete ettevalmistamine enne inferentsi.

  • Teksti väljastust on parendatud.
    Vana teksti renderdamise mehhanism on asendatud STB-põhise TrueType-mootoriga, mis sisaldab sisseehitatud variatiivset Rubiki fonti. Saate ühendada kohandatud fonte ning laialdane Unicode'i tugi on olemas. Siiski on keerulised kirjad, nagu araabia ja devanagari, endiselt vale kuvamisega Harfbuzzi puudumise tõttu, ning värvilised emotikonid ei ole toetatud. OpenCV on mugavam annotatsioonide, silumisillustratsioonide ja visualiseerimiste genereerimiseks ilma välistest teekidest.

  • 3D ja kaamerate kalibreerimine on uuendatud.
    calib3d on jagatud geometry, calib, stereo ja ptcloud-ks. USAC on saanud standardseks tagaplaaniks stabiilse homograafia, essentsiaalse/fundamental maatriksi, PnP ja muude ülesannete hindamiseks. Lisatud on mitme kaamera kalibreerimise töövoog, algne tugi võrkude ja punktipilvede töötlemiseks, sealhulgas TSDF, ICP, .ply ja .obj impordi ning ekspordi tugi. See on oluline samm robootikas, SLAM-is, AR/VR-is ja mitme kaamera süsteemides, kus lihtsalt 2D töötlusest enam ei piisa.

  • Näited ja dokumentatsioon on uuendatud.
    Ajakohased näited on eemaldatud, ülejäänud on uuendatud. DNN näidete jaoks kasutatakse jagatud mudelikogumikku, mille saab alla laadida skripti download_models.py abil. Lisatud on eksperimentaalsed näited VLM ja LDM jaoks ning dokumentatsioon on saanud uue teema, kiire otsingu, hele/tumeda režiimi ja parema navigeerimise. Sellise suure raamatukogu puhul ei ole see kosmeetiline muudatus: korralik dokumentatsioon ja töötavad näited mõjutavad otseselt, kas arendajad saavad tõeliselt üle minna OpenCV 5.x-ile.

Seetõttu on OpenCV 5.0 mitte lihtsalt järjekordne versioon optimeeringutega, vaid oluline uuendus kõiges: vähem pärandit OpenCV 1.x ajast ja rohkem suunatust ONNX-ile, närvivõrgu järeldusele, kaasaegsetele tunnustele, 3D töötlemisele ja heterogeensele kiirendusele. Samas võib üleminek vanadele projektidele nõuda muudatusi seoses C API eemaldamise ja osa moodulite üleviimisega opencv_contrib'i.

Allikas: linux.org.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster