
paskelbta OpenCV 5.0.0 — svarbi atvirojo kodo bibliotekos, skirtos kompiuterinei regai ir vaizdų apdorojimui, versija. Išleidimas įvyko 6 Birželis 2026 metų ir jau pažymėtas kaip aktualus projekto „GitHub“ saugykloje. „OpenCV“ platinamas pagal licenciją „Apache-2.0“.
Šio leidimo esmė – „OpenCV“ perėjimas nuo „klasikinės kompiuterinės regos bibliotekos“ prie modernesnės platformos CV/AI užduotims: projekto metu buvo išvalyta senoji API, perdarytas neuroninio tinklo išvadų modulis, išplėstas ONNX palaikymas, pridėta VLM/LLM scenarijų palaikymas ir atnaujintas 3D/kalibravimo paketas. Kūrėjai „OpenCV 5.0“ apibūdina kaip šaką, kuri dabar laikoma stabilia, ir naujos funkcijos daugiausia bus pridėtos prie jos.
Pagrindiniai pokyčiai
Naujas DNN išvadų variklis.
dnn modulis dabar turi naują variklį, kuris veikia kartu su senuoju. Jis geriau veikia su dinaminėmis tenzorių formomis, subgrafais ir moderniomis ONNX funkcijomis. Teigiama, kad aprėptis yra platesnė. 80 % ONNX specifikacijos, o „OpenCV 4.x“ versijoje buvo padengta mažiau nei 23 %.
Tai turbūt didžiausias šio leidimo pokytis: „OpenCV“ tampa ne tik modelio apvalkalu, bet ir visaverčiu integruotu išvadų varikliu šiuolaikiniams neuroniniams tinklams.Variklio pasirinkimas kraunant modelį.
Į cv::dnn::readNet() ir susijusias funkcijas buvo pridėtas ENGINE_AUTO parametras. Pagal numatytuosius nustatymus „OpenCV“ pirmiausia išbando naują variklį, o nesėkmingai – klasikinį variklį. Šį elgesį taip pat galima konfigūruoti naudojant aplinkos kintamąjį OPENCV_FORCE_DNN_ENGINE: naudoti senąjį variklį, naują variklį, automatinį režimą arba ONNX vykdymo aplinką. Seniems projektams nebūtina iš karto visiškai persijungti į naują variklį, tačiau naujus modelius galima palaipsniui į jį perkelti.Integracija su ONNX vykdymo aplinka.
„OpenCV“ dabar galima kurti įjungus ONNX vykdymo aplinką. „OpenCV“ naudoja savo ONNX analizatorių ORT grafui kurti, todėl jam nereikia viso ONNX paketo. Kurti galima naudojant šiuos CMake parametrus: -DWITH_ONNXRUNTIME=ON ir -DDOWNLOAD_ONNXRUNTIME=ON; NVIDIA GPU atveju -DDOWNLOAD_ONNXRUNTIME_GPU=ON. Ši funkcija bus naudinga tiems, kuriems dabar reikia GPU išvados, nes naujasis „OpenCV“ DNN variklis šiuo metu veikia tik procesoriuose.Regėjimo kalbos modelių palaikymas.
Naujasis DNN variklis apima tokenizerius, dėmesio sluoksnius, dekodavimo blokus, papildomą apdorojimą ir KV talpyklą, būtinus VLM modeliams paleisti iš karto. Istoriškai siejama su vaizdų apdorojimu, biblioteka dabar plečiasi į modelių, kurie vienu metu apdoroja vaizdus ir tekstą, sritį.Naujojo DNN variklio GPU palaikymas dar nėra paruoštas.
Naujasis „OpenCV 5.0“ variklis veikia tik su procesoriais (CPU). Ateities leidimuose žadama integruota GPU palaikymas; kol kas GPU rekomenduojamas klasikinis variklis arba versija su ONNX Runtime ir NVIDIA vykdymo teikėjais. Serverio ar darbalaukio CUDA išvadose „OpenCV 5.0“ vien tik dar nepakeičia specializuotų vykdymo aplinkų.Seni „Darknet“ ir „Caffe“ analizatoriai buvo pašalinti.
Kūrėjai pašalino „Darknet“ ir „Caffe“ analizatorius, nes dauguma modelių jau buvo perkelti į ONNX. „TFLite“ kol kas liks klasikiniame variklyje, o perkėlimas į naująjį variklį planuojamas vėliau. „OpenCV“ atsisako senesnių formatų ir daugiausia dėmesio skiria ONNX kaip pagrindiniam modelių mainų formatui.Iš esmės atnaujintas senosios API.
„OpenCV 1.x C“ API buvo pašalinta: tokios funkcijos kaip „cvCreateMat()“ ir senos struktūros, tokios kaip „CvMat“, nebėra pagrindinės API dalis. Taip pat pašalintas „OpenVX“ palaikymas, G-API modulis perkeltas į opencv_contrib, o klasikinis ML modulis taip pat perkeltas ten pat. Tai esminis pokytis senesniems projektams, tačiau jo reikėjo jau seniai: biblioteka atsikrato dešimtmečių techninės skolos.„Features2D“ pervadintas į „Features“.
Modulis buvo išplėstas, kad tilptų šiuolaikiniai požymių vektoriai iš neuroninių tinklų. SIFT, ORB, FAST, GoodFeaturesToTrack ir MSER buvo išlaikyti pagrindinėje saugykloje, o seni detektoriai ir deskriptoriai perkelti į opencv_contrib. Pridėti ALIKED, DISK ir „LightGlue“ atitikiklis. „OpenCV“ akivaizdžiai prisitaiko prie šiuolaikinių srautų, kur vaizdo požymiai vis dažniau išgaunami naudojant neuroninius tinklus, o ne klasikinius algoritmus.Nauji duomenų tipai „Core“.
Pridėta CV_16BF / cv::bfloat, CV_32U, CV_64U, CV_64S ir CV_Bool. Taip pat patobulintas N dimensijų masyvų, 1D masyvų ir 0D skaliarų palaikymas. LAPACK dabar visada pasiekiamas: jei trūksta išorinės bibliotekos, „OpenCV“ sukuria integruotą minimalų poaibį. Šie pakeitimai svarbūs DNN, skaitmeniniams algoritmams ir suderinamumui su šiuolaikiniais duomenų formatais, kur vis dažniau naudojami bfloat16 ir išplėstiniai tipai.Vaizdų apdorojimas buvo pagreitintas.
„WarpAffine“, „warpPerspective“ ir „remap“ buvo atnaujinti „imgproc“ programoje. Teigiama, kad našumas pagerės nuo 10 % iki daugiau nei 300 %, priklausomai nuo platformos, vaizdo dydžio, duomenų tipo ir operacijų žymų.
Tai ne tik apie dirbtinį intelektą – toks optimizavimas yra tiesiogiai svarbus atliekant klasikines užduotis: vaizdo srautus, stabilizavimą, projekcijos transformacijas ir duomenų paruošimą prieš darant išvadas.Patobulinta teksto išvestis.
Senasis teksto atvaizdavimo variklis buvo pakeistas STB pagrindu veikiančiu „TrueType“ varikliu su integruotu Rubiko kintamojo šriftu. Galima įterpti pasirinktinius šriftus ir pridėtas platus „Unicode“ palaikymas. Tačiau sudėtingi raštai, tokie kaip arabų ir devanagari, be „Harfbuzz“ vis dar rodomi neteisingai, o spalvoti jaustukai nepalaikomi. „OpenCV“ tampa patogesnė anotacijoms generuoti, vaizdams derinti ir vizualizacijoms be išorinių bibliotekų.Atnaujintas 3D ir kameros kalibravimas.
„calib3d“ yra padalintas į geometrijos, „calib“, „stereo“ ir „ptcloud“ dalis. USAC tapo standartine sistema, skirta patikimai homografijai, esminėms/fundamentalioms matricoms, PnP ir kitoms užduotims. Pridėtas kelių kamerų kalibravimo srautas ir pradinė tinklelio bei taškų debesų apdorojimo parama, įskaitant TSDF, ICP, .ply ir .obj importą ir eksportą. Tai svarbus žingsnis robotikos, SLAM, AR/VR ir kelių kamerų sistemose, kur vien 2D apdorojimo ilgą laiką nepakako.Pavyzdžiai ir dokumentai buvo peržiūrėti.
Pasenę pavyzdžiai buvo pašalinti, o likę atnaujinti. DNN pavyzdžiuose dabar naudojama bendra modelių kolekcija, kurią galima atsisiųsti naudojant download_models.py scenarijų. Pridėti eksperimentiniai VLM ir LDM pavyzdžiai, o dokumentacija įgijo modernią temą, greitąją paiešką, šviesų/tamsų režimą ir patobulintą navigaciją. Tokiai didelei bibliotekai tai nėra kosmetinis pakeitimas: tinkama dokumentacija ir veikiantys pavyzdžiai tiesiogiai veikia, ar kūrėjai iš tikrųjų pereis prie „OpenCV 5.x“.
Galiausiai, „OpenCV 5.0“ yra ne tik dar vienas optimizuotų versijų leidimas, bet ir reikšmingas atnaujinimas: mažiau palikimo iš „OpenCV 1.x“ eros ir daugiau dėmesio ONNX, neuroninių tinklų išvados, modernios funkcijos, 3D apdorojimas ir nevienalytis spartinimas. Tačiau senesnių projektų perėjimas gali pareikalauti tam tikrų pakeitimų dėl C API pašalinimo ir kai kurių modulių perkėlimo į opencv_contrib.
Šaltinis: linux.org.ru
