Hovedproblemet med afgrænsningsbokse i Python er, at de ikke er særlig nøjagtige.
def bounding_box(x, y, width, height):
return (x - width/2, y - height/2, x + width/2, y + height/2)
Dette er en funktionsdefinition. Funktionen tager fire argumenter - x, y, bredde og højde - og returnerer en tupel af fire værdier - koordinaterne for det øverste venstre hjørne og nederste højre hjørne af en afgrænsningsramme.
Afgrænsningsboks
En afgrænsningsramme er et todimensionelt objekt, der omslutter alle punkterne inden for dets grænser. I Python kan en afgrænsningsramme oprettes ved hjælp af bbox-funktionen.
OpenCV
OpenCV er et bibliotek til computersyn og billedbehandling. Den kan bruges til at behandle billeder og videoer, detektere objekter, spore bevægelige objekter og udføre ansigtsgenkendelse. OpenCV er gratis og open source-software udgivet under GNU General Public License.
Udtræk afgrænsningsrammen
I Python kan du bruge den indbyggede funktion afgrænsningsramme til at få afgrænsningsrammen for et givent objekt. Denne funktion tager to argumenter: det objekt, der skal afgrænses, og en størrelsesparameter. Funktionen returnerer en tupel indeholdende (x, y, bredde, højde).
Her er et eksempel, der bruger afgrænsningsrammens funktion til at få afgrænsningsrammen for et givet objekt:
>>> obj = Objekt() >>> obj.størrelse = (10, 10, 100, 100) >>> bbox = obj.bounding_box() >>> print(bbox) (10, 10, 100, 100)