OpenCV 5.0.0

Byl zveřejněn OpenCV 5.0.0 — velké vydání otevřené knihovny počítačového vidění a zpracování obrazu. Vydání proběhlo 6. června 2026 a je již uvedeno jako aktuální v repozitáři projektu na GitHubu. OpenCV je distribuováno pod licencí Apache-2.0.

Podstatou vydání je přechod OpenCV od "klasické knihovny počítačového vidění" k modernější platformě pro CV/AI úkoly: projekt vyčistil staré API, přepracoval modul neuronové sítě, rozšířil podporu ONNX, přidal základy pro scénáře VLM/LLM a aktualizoval 3D/kalibrační stack. Vývojáři popisují OpenCV 5.0 jako větev, která je nyní také považována za stabilní, a nová funkčnost se bude dostávat převážně tam.

Hlavní změny

  • Nový engine DNN inference.
    V modulu dnn se objevil nový engine, který koexistuje se starým. Lépe pracuje s dynamickými formami tenzorů, podsítí a moderními funkcemi ONNX. Bylo uvedeno pokrytí více než 80% specifikace ONNX, zatímco v OpenCV 4.x bylo pokryto méně než 23%.
    To je pravděpodobně hlavní změna vydání: OpenCV se snaží stát nejen obklopujícím rámcem kolem modelů, ale plnohodnotným vestavěným enginem inference pro moderní neurální sítě.

  • Výběr engine při načítání modelu.
    V cv::dnn::readNet() a příbuzných funkcích byl zaveden parametr ENGINE_AUTO. Ve výchozím nastavení se OpenCV nejprve pokusí o nový engine, a pokud se mu to nepodaří, vrátí se k klasickému. Chování lze také nastavit prostřednictvím proměnné prostředí OPENCV_FORCE_DNN_ENGINE: použít starý engine, nový, automatický režim nebo ONNX Runtime. Staré projekty nemusí okamžitě přecházet na nový engine, ale nové modely je možné na něj postupně převádět.

  • Integrace s ONNX Runtime.
    OpenCV lze nyní sestavit se zapnutým ONNX Runtime. Přitom OpenCV využívá vlastního ONNX parseru pro stavbu grafu ORT, proto nevyžaduje plný balík ONNX. Pro sestavení jsou předem stanoveny parametry CMake -DWITH_ONNXRUNTIME=ON a -DDOWNLOAD_ONNXRUNTIME=ON; pro NVIDIA GPU — -DDOWNLOAD_ONNXRUNTIME_GPU=ON. Funkce bude užitečná těm, kdo potřebují GPU inference již teď, protože nový DNN engine OpenCV prozatím funguje pouze na CPU.

  • Podpora modelů vision-language.
    Nový DNN engine zahrnuje tokenizéry, vrstvy pozornosti, dekódovací bloky, postprocessing a KV cache potřebné pro spuštění VLM modelů „z krabice“. Knihovna byla historicky spojena s zpracováním obrázků a nyní se posouvá do oblasti modelů, které pracují současně s obrázkem a textem.

  • Podpora GPU nového DNN enginu zatím není připravena.
    Nový engine v OpenCV 5.0 funguje pouze na CPU. Nativní podpora GPU bude přidána v následujících verzích; zatím je pro GPU doporučeno používat klasický engine nebo sestavení s ONNX Runtime a NVIDIA execution providers. Pro serverové nebo desktopové CUDA inferencing OpenCV 5.0 samo o sobě ještě nenahrazuje specializované runtime.

  • Byly odstraněny staré parsery Darknet a Caffe.
    Vývojáři odstranili parsery Darknet a Caffe, protože většina modelů byla již převedena do ONNX. TFLite zatím zůstává přes klasický engine, ale převod na nový engine je naplánován později. OpenCV se vzdává starých formátů a zaměřuje se na ONNX jako hlavní výměnný formát modelů.

  • Velké vyčištění zastaralého API.
    Odstraněno je C API OpenCV 1.x: funkce jako cvCreateMat() a staré struktury jako CvMat již nejsou součástí hlavního API. Také byla odstraněna podpora OpenVX, modul G-API byl přesunut do opencv_contrib, kam byl přenesen i klasický ML modul. Závažná změna pro staré projekty, ale dlouho se očekávala: knihovna se zbavuje technického dluhu, který se nahromadil za desetiletí.

  • Features2D byl přejmenován na Features.
    Modul byl rozšířen pro moderní vektory příznaků z neuronových sítí. V hlavním repozitáři zůstaly SIFT, ORB, FAST, GoodFeaturesToTrack a MSER, starší detektory a popisovače byly přesunuty do opencv_contrib. Přidány byly ALIKED, DISK a přiřazovač LightGlue. OpenCV se jasně přizpůsobuje moderním pipeline, kde jsou vlastnosti obrázků čím dál častěji extrahovány nikoli klasickými algoritmy, ale neuronovými sítěmi.

  • Nové datové typy v Core.
    Byly přidány CV_16BF / cv::bfloat, CV_32U, CV_64U, CV_64S a CV_Bool. Také byla vylepšena podpora N-dimenzionálních polí, 1D polí a 0D skalarů. LAPACK je nyní vždy dostupný: pokud není externí knihovna, OpenCV sestavuje vestavěné minimální podmnožiny. Změny jsou důležité pro DNN, numerické algoritmy a kompatibilitu s moderními datovými formáty, kde se bfloat16 a rozšířené typy vyskytují stále častěji.

  • Zpracování obrázků bylo zrychleno.
    V imgproc byly přepracovány funkce warpAffine, warpPerspective a remap. Zlepšení výkonu se pohybují od 10 % do více než 300 % v závislosti na platformě, velikosti obrázku, typu dat a operačních flagů.
    Už se to netýká jen AI-modulu — taková optimalizace je přímo důležitá pro klasické úkoly: videostreamy, stabilizaci, projekční transformace a přípravu dat před inferencí.

  • Byl vylepšen výstup textu.
    Starý mechanismus renderování textu byl nahrazen STB-založeným TrueType engine s vestavěným variabilním písmem Rubik. Je možné připojovat uživatelské fonty a byla zajištěna široká podpora Unicode. Nicméně složité písma jako arabské a devangari se stále zobrazují nesprávně bez Harfbuzzu a barevné emoji nejsou podporovány. OpenCV se stává snadnějším pro generování anotací, ladicích obrázků a vizualizací bez externích knihoven.

  • Byly aktualizovány 3D a kalibrace kamer.
    calib3d byl rozdělen na geometry, calib, stereo a ptcloud. USAC se stal standardním backendem pro robustní odhad homografie, essential/fundamental matrix, PnP a další úkoly. Byla přidána pipeline pro vícerozměrnou kalibraci, počáteční podpora zpracování mřížek a bodových oblaků, včetně TSDF, ICP, importu a exportu .ply a .obj. To je důležitý krok pro robotiku, SLAM, AR/VR a vícerozměrné systémy, kde už jedna 2D-úprava nestačí.

  • Příklady a dokumentace byly přepracovány.
    Zastaralé příklady byly odstraněny, zbývající byly aktualizovány. Pro DNN-příklady se používá společná sbírka modelů, kterou lze stáhnout pomocí skriptu download_models.py. Přidány experimentální příklady pro VLM a LDM, a dokumentace dostala moderní vzhled, rychlé vyhledávání, světlý/temný režim a vylepšenou navigaci. Pro tak velkou knihovnu se nejedná o kosmetickou změnu: řádná dokumentace a funkční příklady přímo ovlivňují to, zda mohou vývojáři skutečně přejít na OpenCV 5.x.

Výsledkem je, že OpenCV 5.0 není jen další vydání s optimalizacemi, ale významná aktualizace celého sistema: méně dědictví z éry OpenCV 1.x a více zaměření na ONNX, neuronové inferenci, moderní funkce, 3D-zpracování a heterogenní zrychlení. Přitom přechod pro staré projekty může vyžadovat úpravy kvůli odstranění C API a přesunu části modulů do opencv_contrib.

Zdroj: linux.org.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster