
Publiceret OpenCV 5.0.0 — stor udgivelse af et åbent bibliotek til computer vision og billedbehandling. Udgivelsen fandt sted 6. juni 2026 og er allerede blevet bemærket som relevant i projektets repository på GitHub. OpenCV distribueres under en licens Apache-2.0.
Kernen i udgivelsen er overgangen af OpenCV fra "klassisk computer vision bibliotek" til en mere moderne platform til CV/AI-opgaver: projektet har ryddet op i det gamle API, omarbejdet modul til neurale netværk inferens, udvidet understøttelsen af ONNX, tilføjet fundament til VLM/LLM-scenarier, og opdateret 3D/kalibreringsstakken. Udviklerne beskriver OpenCV 5.0 som en gren, der nu også betragtes som stabil, mens ny funktionalitet primært vil blive inkluderet dér.
Vigtige ændringer
Ny DNN-inferensmotor.
I DNN-modulet er der en ny motor, der sameksisterer med den gamle. Den fungerer bedre med dynamiske tensorformer, undergraf og moderne muligheder for ONNX. Dækning angives til mere end 80% af ONNX-specifikationen, mens OpenCV 4.x dækkede mindre end 23%.
Dette er sandsynligvis den vigtigste ændring i udgivelsen: OpenCV forsøger at blive ikke blot en indpakning omkring modeller, men en fuldgyldig indbygget inferensmotor til moderne neurale netværk.Valg af motor ved indlæsning af model.
I cv::dnn::readNet() og beslægtede funktioner er der tilføjet parameteren ENGINE_AUTO. Som standard forsøger OpenCV først den nye motor, og ved fejlslagen forsøg falder den tilbage til den klassiske. Adfærden kan også angives gennem miljøvariablen OPENCV_FORCE_DNN_ENGINE: brug den gamle motor, den nye, automatisk tilstand eller ONNX Runtime. Gamle projekter er ikke forpligtede til straks at overgå til den nye motor, men nye modeller kan gradvist konverteres til den.Integration med ONNX Runtime.
OpenCV kan nu samles med tilsluttet ONNX Runtime. I den forbindelse bruger OpenCV sin egen ONNX-parser til at bygge ORT-grafen, hvilket betyder, at det ikke kræver det komplette ONNX-pakke. Kompileringsmulighederne inkluderer CMake-parametre -DWITH_ONNXRUNTIME=ON og -DDOWNLOAD_ONNXRUNTIME=ON; for NVIDIA GPU’er — -DDOWNLOAD_ONNXRUNTIME_GPU=ON. Denne funktion vil være nyttig for dem, der har brug for GPU-inferens nu, fordi den nye DNN-motor i OpenCV i øjeblikket kun fungerer på CPU.Understøttelse af vision-sprogmodeller.
Den nye DNN-motor inkluderer tokenisatorer, opmærksomhedslag, dekoderblokke, efterbehandling og KV-cache, der kræves for at køre VLM-modeller "straight out of the box". Biblioteket har historisk været forbundet med billedbehandling, men bevæger sig nu ind i området for modeller, der arbejder med både billeder og tekst samtidig.GPU-understøttelse af den nye DNN-motor er ikke klar endnu.
Den nye motor i OpenCV 5.0 fungerer kun på CPU. Native GPU-understøttelse er lovet i kommende udgivelser; indtil da anbefales det at bruge den klassiske motor eller en version med ONNX Runtime og NVIDIA execution providers til GPU. OpenCV 5.0 kan endnu ikke erstatte specialiserede runtime-miljøer til server- eller desktop-CUDA-inferens.De gamle parsere Darknet og Caffe er fjernet.
Udviklerne har fjernet parserne Darknet og Caffe, da størstedelen af modellerne allerede er blevet konverteret til ONNX. TFLite forbliver tilgængelig via den klassiske motor, mens overgangen til den nye motor er planlagt til senere. OpenCV går væk fra gamle formater og fokuserer på ONNX som det primære udvekslingsformat for modeller.En stor oprydning af forældet API.
OpenCV 1.x C API er fjernet: funktioner som cvCreateMat() og gamle strukturer som CvMat er ikke længere en del af det primære API. Der er også fjernet støtte til OpenVX, mens G-API-modulet er flyttet til opencv_contrib, hvor den klassiske ML-modul også er sendt hen. En gennemgribende ændring for gamle projekter, men det har længe været nødvendigt: biblioteket rydder op i den tekniske gæld, der er akkumuleret i årtier.Features2D er blevet omdøbt til Features.
Modulet er blevet udvidet til moderne feature-vektorer fra neurale netværk. I det primære repository er SIFT, ORB, FAST, GoodFeaturesToTrack og MSER blevet beholdt, mens forældede detektorer og descriptorer er flyttet til opencv_contrib. Der er tilføjet ALIKED, DISK og matcher LightGlue. OpenCV tilpasser sig klart moderne pipelines, hvor billedtræk ofte ikke længere udvindes med klassiske algoritmer, men snarere med neurale netværk.Nye datatyper i Core.
CV_16BF / cv::bfloat, CV_32U, CV_64U, CV_64S og CV_Bool er blevet tilføjet. Støtten til N-dimensionale arrays, 1D-arrays og 0D-skalarer er også blevet forbedret. LAPACK er nu altid tilgængelig: hvis den eksterne biblioteks ikke findes, bygger OpenCV en indbygget minimumsundergruppe. Ændringerne er vigtige for DNN, numeriske algoritmer og kompatibilitet med moderne dataformater, hvor bfloat16 og udvidede typer bliver mere og mere almindelige.Behandlingen af billeder er blevet hurtigere.
I imgproc er warpAffine, warpPerspective og remap blevet omarbejdet. Ydelsesforbedringer rapporteres at være mellem 10% og over 300% afhængigt af platform, størrelsen på billedet, datatyper og operationens flag.
Dette handler ikke længere kun om AI-moduler — sådanne optimeringer er direkte vigtige for klassiske opgaver: videostrømme, stabilisering, projektionsændringer og dataklargøring før inferens.Tekstudgang er forbedret.
Den gamle tekst-renderingsmekanisme er blevet erstattet af en STB-baseret TrueType-motor med den indbyggede variable skrifttype Rubik. Brugerdefinerede skrifttyper kan tilsluttes, og der er kommet bred støtte til Unicode. Dog vises komplekse skriftsystemer som arabisk og devanagari stadig ikke korrekt uden Harfbuzz, og farvede emoji understøttes ikke. OpenCV bliver mere praktisk til generering af annotationer, debug-billeder og visualiseringer uden eksterne biblioteker.3D og kamerakalibrering er blevet opdateret.
calib3d er opdelt i geometry, calib, stereo og ptcloud. USAC er blevet den standard backend for robust vurdering af homografi, essentiel/fundamental matrix, PnP og andre opgaver. En pipeline til kalibrering af flere kameraer er blevet tilføjet, sammen med indledende støtte til behandling af mesh og punktskyer, inklusive TSDF, ICP, import og eksport af .ply og .obj. Dette er et vigtigt skridt for robotteknologi, SLAM, AR/VR og systemer med flere kameraer, hvor 2D-behandling ikke længere er tilstrækkelig.Eksempler og dokumentation er blevet omarbejdet.
Utdaterede eksempler er blevet fjernet, og de resterende er opdateret. DNN-vederlagene bruger en fælles samling af modeller, som kan downloades med scriptet download_models.py. Der er tilføjet eksperimentelle eksempler for VLM og LDM, og dokumentationen har fået et moderne tema, hurtig søgning, lys/mørk tilstand og forbedret navigation. For et så stort bibliotek er dette ikke en kosmetisk ændring: ordentlig dokumentation og fungerende eksempler påvirker direkte, om udviklere reelt kan skifte til OpenCV 5.x.
Som resultat er OpenCV 5.0 ikke bare endnu en version med optimeringer, men en betydelig opdatering på alle områder: mindre arvegods fra OpenCV 1.x-æraen og mere fokus på ONNX, neurale netværk inferens, moderne funktioner, 3D-behandling og heterogen acceleration. Samtidig kan overgangen for ældre projekter kræve justeringer på grund af fjernelse af C API og flytning af dele af modulerne til opencv_contrib.
Kilde: linux.org.ru
