Vyriešené: ohraničujúci rámček v pythone

Hlavným problémom ohraničujúcich polí v Pythone je, že nie sú veľmi presné.

def bounding_box(x, y, width, height):
    return (x - width/2, y - height/2, x + width/2, y + height/2)

Toto je definícia funkcie. Funkcia používa štyri argumenty – x, y, šírku a výšku – a vracia n-ticu štyroch hodnôt – súradnice ľavého horného rohu a pravého dolného rohu ohraničovacieho rámčeka.

Ohraničujúca skrinka

Ohraničujúci rámček je dvojrozmerný objekt, ktorý uzatvára všetky body v rámci svojich hraníc. V Pythone je možné vytvoriť ohraničujúci rámček pomocou funkcie bbox.

OpenCV

OpenCV je knižnica pre počítačové videnie a spracovanie obrazu. Môže sa použiť na spracovanie obrázkov a videí, detekciu objektov, sledovanie pohybujúcich sa objektov a rozpoznávanie tváre. OpenCV je bezplatný a open source softvér vydaný pod GNU General Public License.

Extrahujte ohraničujúci rámček

V Pythone môžete použiť ohraničovací rámček vstavanej funkcie na získanie ohraničovacieho rámčeka daného objektu. Táto funkcia má dva argumenty: objekt, ktorý má byť ohraničený, a parameter veľkosti. Funkcia vráti n-ticu obsahujúcu (x, y, šírka, výška).

Tu je príklad, ktorý používa funkciu ohraničovacieho rámčeka na získanie ohraničovacieho rámčeka daného objektu:

>>> obj = Object() >>> obj.size = (10, 10, 100, 100) >>> bbox = obj.bounding_box() >>> print(bbox) (10, 10, 100, 100)

Súvisiace príspevky:

Pridať komentár