Megjelent az OpenCV 5.0 számítógépes látás könyvtár, átírt DNN motorral

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

OpenCV 5.0 megjelent, mint a széles körben használt nyílt forráskódú számítógépes látás könyvtár jelentős frissítése. Az új verzió egy átdolgozott mély neurális hálózati motort, szélesebb ONNX modell támogatást, beépített látás-nyelvi modell támogatást, valamint a régebbi API-k alapos átvizsgálását hozza.

Akik nem ismerik, az OpenCV egy szoftverkönyvtár, amely segíti az alkalmazásokat a képek vagy videók "látásában" és feldolgozásában. Használják robotikában, ipari ellenőrzésben, kamerákban, orvosi képalkotásban, objektumok észlelésében, kiterjesztett valóságban, önvezető kutatásokban és AI-alapú képelemzésben.

A legnagyobb változás a DNN modulban történt, amely a legnagyobb frissítést kapta az OpenCV 4.x óta. Az OpenCV 5.0 egy új következtetési motort tartalmaz, amely a klasszikus mellett fut, és sokkal jobb támogatást nyújt a dinamikus formák, alhálózatok és modern ONNX funkciók számára. A projekt szerint az új motor most már az ONNX specifikáció több mint 80%-át lefedi, míg az OpenCV 4.x esetében ez az arány kevesebb mint 23% volt.

Az új DNN motort alapértelmezés szerint automatikusan választják ki, és szükség esetén visszaáll a klasszikus motorra. A fejlesztők egy új motor paraméter vagy az

OPENCV_FORCE_DNN_ENGINE

környezeti változó segítségével is irányíthatják a működését. Az OpenCV 5.0 ONNX Runtime támogatással is felépíthető, beleértve az NVIDIA GPU végrehajtási szolgáltatókat a megfelelő build opciók használatakor.

Jelenleg azonban az új motor csak CPU-kon működik. A GPU támogatás az új motorhoz későbbi kiadásokban várható. Jelenleg azok a felhasználók, akik GPU-alapú gyorsítást igényelnek, továbbra is használhatják a klasszikus motort, vagy felépíthetik az OpenCV-t ONNX Runtime és NVIDIA végrehajtási szolgáltató támogatással.

Újabb jelentős újdonság a multimodális modellek támogatása. Az OpenCV 5.0 tartalmazza a VLM következtetéshez szükséges tokenizálókat és komponenseket, beleértve a figyelmi rétegeket, dekódoló blokkokat, utófeldolgozást és KV-cache támogatást. Ez lehetővé teszi az OpenCV számára, hogy olyan modelleket futtasson, amelyek kombinálják a képfeldolgozást a nyelvi kimenettel, például egy kép leírását vagy kérdések megválaszolását a vizuális tartalomról.

A teljesítmény terén a projekt azt állítja, hogy az új DNN motor versenyképes CPU következtetési teljesítményt nyújt, amely néhány tesztelt modell esetében megfelel vagy felülmúlja az ONNX Runtime-ot. A képfeldolgozás is fejlesztéseken ment keresztül, beleértve a felülvizsgált warpAffine, warpPerspective és remap megvalósításokat, a sebességnyereség a platformtól, a kép méretétől, típusától és a műveleti zászlóktól függően változik.

Az OpenCV 5.0 új adat típusokat is hozzáad a Core modulban, beleértve a bfloat16, uint32, uint64, int64 és boolean mátrix támogatást. Emellett javítja a 0D és 1D tömbök támogatását, ami fontos a DNN forma következtetés és az általános tömbkezelés szempontjából.

Ezen kívül az OpenCV 5.0 eltávolította a régi C API-t, beleértve az OpenCV 1.x korszakból származó örökölt C függvényeket és struktúrákat. Az OpenVX támogatást is eltávolították, míg a G-API és a klasszikus ML modul az opencv_contrib-hoz került.

Az új kiadás egy több nézetű kamera kalibrációs folyamatot is hozzáad, megbízhatóbb becslést biztosít az USAC mint alapértelmezett háttér, valamint kezdeti támogatást nyújt a hálózati és pontfelhő algoritmusokhoz, beleértve a TSDF-t és ICP-t, valamint importálókat és exportálókat a PLY és OBJ formátumokhoz.

A minimális követelmények is megváltoztak. Az OpenCV 5.0 most már C++17-et igényel, míg a Python 2 támogatást teljesen eltávolították. A projekt most már Python 3.6 vagy újabb verziót igényel, és kizárólag Python 3 kötődéseket épít és terjeszt.

További részletekért lásd a kiadási bejelentést.