
Published OpenCV 5.0.0 — en stor utgivelse av et åpent bibliotek for datamaskinsyn og bildebehandling. Utgivelsen fant sted 6. juni 2026 og er allerede anerkjent som relevant i prosjektets GitHub-repositorium. OpenCV distribueres under lisensen Apache-2.0.
Hovedformålet med utgivelsen er å overføre OpenCV fra "den klassiske datamaskinsynsbiblioteket" til en mer moderne plattform for CV/AI-oppgaver: prosjektet har ryddet opp i det gamle API-et, redesignet nevrale nettverksinferensmodulen, utvidet støtten for ONNX, lagt til grunnlag for VLM/LLM-scenarier, og oppdatert 3D/kalibreringsstakken. Utviklerne beskriver OpenCV 5.0 som en gren, nå også ansett som stabil, og den nye funksjonaliteten vil hovedsakelig bli lagt til der.
Viktige endringer
En ny DNN-inferensmotor.
I dnn-modulen har en ny motor blitt introdusert, som sameksisterer med den gamle. Den fungerer bedre med dynamiske tensorformer, delgrafer og moderne ONNX-muligheter. Dekningen av spesifikasjonen er angitt til 80% av ONNX-spesifikasjonen, mens mindre enn 23% ble dekket i OpenCV 4.x.
Dette er sannsynligvis den viktigste endringen i utgivelsen: OpenCV prøver å bli ikke bare et omslag rundt modeller, men en fullt integrert inferensmotor for moderne nevrale nettverk.Valg av motor ved lasting av modell.
I cv::dnn::readNet() og relaterte funksjoner har en ny parameter ENGINE_AUTO blitt lagt til. Som standard prøver OpenCV først den nye motoren, og hvis det mislykkes, faller tilbake til den klassiske. Atferden kan også angis via miljøvariabelen OPENCV_FORCE_DNN_ENGINE: bruke den gamle motoren, den nye, automatisk modus eller ONNX Runtime. Gamle prosjekter er ikke forpliktet til å umiddelbart overføre alt til den nye motoren, men nye modeller kan gradvis overføres til den.Integrering med ONNX Runtime.
OpenCV kan nå bygges med tilkoblet ONNX Runtime. Dette innebærer at OpenCV bruker sin egen ONNX-parser for å konstruere ORT-grafen, og derfor ikke krever hele ONNX-pakken. Byggalternativene inkluderer CMake-parametrene -DWITH_ONNXRUNTIME=ON og -DDOWNLOAD_ONNXRUNTIME=ON; for NVIDIA GPU — -DDOWNLOAD_ONNXRUNTIME_GPU=ON. Denne funksjonen vil være nyttig for de som trenger GPU-inferens allerede nå, fordi den nye DNN-motoren i OpenCV foreløpig bare fungerer på CPU.Støtte for vision-language modeller.
Den nye DNN-motoren inkluderer tokeniserere, oppmerksomhetslag, dekodingsblokker, etterbehandling og KV-cache nødvendig for å kjøre VLM-modeller "right out of the box". Biblioteket har historisk vært assosiert med bildebehandling, men nå beveger det seg inn i området med modeller som arbeider med både bilder og tekst samtidig.GPU-støtten for den nye DNN-motoren er ennå ikke klar.
Den nye motoren i OpenCV 5.0 kjører kun på CPU. Nativ GPU-støtte loves å bli lagt til i kommende utgivelser; inntil videre anbefales det å bruke den klassiske motoren eller en bygg med ONNX Runtime og NVIDIA execution providers for GPU. For server- eller desktop CUDA-inferens erstatter ikke OpenCV 5.0 spesialiserte runtime-løsninger alene.Gamle parserne fra Darknet og Caffe er fjernet.
Utviklerne har fjernet parserne fra Darknet og Caffe, ettersom de fleste modeller allerede er konvertert til ONNX. TFLite forblir for nå via den klassiske motoren, og overgangen til den nye motoren er planlagt senere. OpenCV gir slipp på gamle formater og fokuserer på ONNX som det primære utvekslingsformatet for modeller.Større opprydning av utdaterte API-er.
OpenCV 1.x C API er fjernet: funksjoner som cvCreateMat() og gamle strukturer som CvMat finnes ikke lenger i hoved-API-en. Støtten for OpenVX er også fjernet, og G-API-modulen er flyttet til opencv_contrib, hvor den klassiske ML-modulen også har blitt sendt. Dette er en brytende endring for gamle prosjekter, men det har lenge vært nødvendig: biblioteket kvitter seg med teknisk gjeld bygget opp over tiår.Features2D har blitt omdøpt til Features.
Modulen er utvidet for moderne egenskapsvektorer fra nevrale nettverk. I hovedlagret er SIFT, ORB, FAST, GoodFeaturesToTrack og MSER bevart, mens utdaterte detektorer og beskrivere har blitt flyttet til opencv_contrib. ALIKED, DISK og matcher LightGlue er lagt til. OpenCV tilpasser seg tydelig moderne pipelines, der bildeegenskaper stadig oftere hentes ut ikke med klassiske algoritmer, men med nevrale nettverk.Nye datatyper i Core.
CV_16BF / cv::bfloat, CV_32U, CV_64U, CV_64S og CV_Bool er lagt til. Støtten for N-dimensjonale arrays, 1D-arrays og 0D-skalarer er også forbedret. LAPACK er nå alltid tilgjengelig: hvis den eksterne biblioteket mangler, bygger OpenCV et innebygd minimalt delsett. Endringene er viktige for DNN, numeriske algoritmer og kompatibilitet med moderne dataformater, der bfloat16 og utvidede typer blir stadig mer vanlig.Bildebehandlingen er akselerert.
I imgproc har blitt omarbeidet warpAffine, warpPerspective og remap. Ytelsesforbedringer er rapportert å være mellom 10 % og mer enn 300 % avhengig av plattform, bilde størrelse, datatype og operasjonsflagg.
Dette handler ikke lenger om AI-modulen – slike optimaliseringer er direkte viktige for klassiske oppgaver: videostrømmer, stabilisering, projeksjonsforvandlinger og databehandling før inferens.Utdata av tekst er forbedret.
Den gamle tekstgjengivelsesmekanismen er blitt erstattet med en STB-basert TrueType-motor med innebygd varierende skrifttype Rubik. Brukerdefinerte skrifttyper kan kobles til, og det er bred støtte for Unicode. Imidlertid vises komplekse skriftsystemer som arabisk og devanagari ikke korrekt uten Harfbuzz, og fargede emoji støttes ikke. OpenCV blir mer brukervennlig for generering av annotasjoner, feilsøkingsbilder og visualiseringer uten eksterne biblioteker.3D og kamerakalibrering er oppdatert.
calib3d er delt opp i geometry, calib, stereo og ptcloud. USAC har blitt standard backend for robust estimering av homografi, essensiell/fundamental matrise, PnP og andre oppgaver. Et pipeline for fler-kamerakalibrering er lagt til, med innledende støtte for behandling av nettverk og punktskyer, inkludert TSDF, ICP, import og eksport av .ply og .obj. Dette er et viktig skritt for robotikk, SLAM, AR/VR og fler-kamerasystemer, hvor kun 2D-behandling lenge har vært utilstrekkelig.Eksempler og dokumentasjon er revidert.
Utdaterte eksempler er fjernet, de gjenværende har blitt oppdatert. For DNN-eksemplene brukes en felles samling modeller som kan lastes ned med scriptet download_models.py. Eksperimentelle eksempler for VLM og LDM er lagt til, og dokumentasjonen har fått et moderne tema, rask søkefunksjon, lys/mørk modus og forbedret navigasjon. For et så stort bibliotek er dette ikke bare en kosmetisk endring: ordentlig dokumentasjon og fungerende eksempler påvirker direkte om utviklere faktisk kan migrere til OpenCV 5.x.
Resultatet er at OpenCV 5.0 ikke bare er en ny utgivelse med optimaliseringer, men en betydelig oppdatering av alt: mindre arv fra tidsperioden med OpenCV 1.x og mer fokus på ONNX, nevralt inferens, moderne trekk, 3D-behandling og heterogen akselerasjon. Overgangen for gamle prosjekter kan imidlertid kreve justeringer på grunn av fjerning av C API og flytting av noen moduler til opencv_contrib.
Kilde: linux.org.ru
