પાયથોનમાં બાઉન્ડિંગ બોક્સની મુખ્ય સમસ્યા એ છે કે તે ખૂબ સચોટ નથી.
def bounding_box(x, y, width, height): return (x - width/2, y - height/2, x + width/2, y + height/2)
આ એક કાર્ય વ્યાખ્યા છે. ફંક્શન ચાર દલીલો લે છે - x, y, પહોળાઈ અને ઊંચાઈ - અને ચાર મૂલ્યોનો ટુપલ આપે છે - ઉપરના ડાબા ખૂણાના કોઓર્ડિનેટ્સ અને બાઉન્ડિંગ બૉક્સના નીચેના જમણા ખૂણે.
બાઉન્ડિંગ બક્સ
બાઉન્ડિંગ બૉક્સ એ દ્વિ-પરિમાણીય ઑબ્જેક્ટ છે જે તેની સીમાઓમાં તમામ બિંદુઓને ઘેરી લે છે. Python માં, bbox ફંક્શનનો ઉપયોગ કરીને બાઉન્ડિંગ બોક્સ બનાવી શકાય છે.
ઓપનસીવી
OpenCV એ કોમ્પ્યુટર વિઝન અને ઈમેજ પ્રોસેસિંગ માટેની લાઈબ્રેરી છે. તેનો ઉપયોગ ઈમેજીસ અને વિડીયો પર પ્રક્રિયા કરવા, ઓબ્જેક્ટ શોધવા, ફરતા પદાર્થોને ટ્રેક કરવા અને ચહેરાની ઓળખ કરવા માટે થઈ શકે છે. OpenCV એ GNU જનરલ પબ્લિક લાયસન્સ હેઠળ મુક્ત અને ઓપન સોર્સ સોફ્ટવેર છે.
બાઉન્ડિંગ બોક્સ બહાર કાઢો
Python માં, આપેલ ઑબ્જેક્ટનું બાઉન્ડિંગ બોક્સ મેળવવા માટે તમે બિલ્ટ-ઇન ફંક્શન બાઉન્ડિંગ બૉક્સનો ઉપયોગ કરી શકો છો. આ ફંક્શન બે દલીલો લે છે: બાઉન્ડ કરવા માટેનો ઑબ્જેક્ટ અને માપ પરિમાણ. ફંક્શન (x, y, પહોળાઈ, ઊંચાઈ) ધરાવતું ટ્યુપલ આપે છે.
અહીં એક ઉદાહરણ છે જે આપેલ ઑબ્જેક્ટના બાઉન્ડિંગ બોક્સ મેળવવા માટે બાઉન્ડિંગ બોક્સ ફંક્શનનો ઉપયોગ કરે છે:
>>> obj = Object() >>> obj.size = (10, 10, 100, 100) >>> bbox = obj.bounding_box() >>> print(bbox) (10, 10, 100, 100)