Bilişim dünyasına kaliteli, özgün ve Türkçe içerikler kazandırmayı hedefleyen bir platform..

friends friends friends

Drawing a Bound Box on an Image with Pascal Voc XML

Pascal Voc XML dosyasından bir resme sınırlayıcı çerçeve(bound box) çizme

import cv2
import xml.etree.ElementTree as ET
import random

# XML dosyasını açın ve ağaç yapısını analiz edin
tree = ET.parse('C:\\Users\\MAHMUT-PC\\Desktop\\kaggle-sainfoin-dataset\\train\\20_mixed_flash_only_nt_IMG_0019.xml')
root = tree.getroot()

# Renklerin sözlüğü
color_map = {'pods': (127, 127, 127), 'seeds': (255, 127, 127), 'split': (255, 255, 0)}


# Resim dosyasını yükleyin
img = cv2.imread('C:\\Users\\MAHMUT-PC\\Desktop\\kaggle-sainfoin-dataset\\train\\20_mixed_flash_only_nt_IMG_0019.jpg')

# Tüm nesnelerin etiketlerini ve sınırlayıcı kutularını bulun
for i, obj in enumerate(root.findall('object')):
    label = obj.find('name').text
    bbox = obj.find('bndbox')
    xmin = int(bbox.find('xmin').text)
    ymin = int(bbox.find('ymin').text)
    xmax = int(bbox.find('xmax').text)
    ymax = int(bbox.find('ymax').text)

   # Eğer renk daha önce seçilmemişse, rastgele bir renk seçin
    if label not in color_map:
        color_map[label] = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))

    # Sınırlayıcı kutuyu resimde çizin ve sınıf adını yazdırın
    color = color_map[label]
    cv2.rectangle(img, (xmin, ymin), (xmax, ymax), color, 2)
    #cv2.putText(img, label, (xmin, ymin - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.9, color, 2)
    cv2.putText(img, label, (xmin, ymin - 5), cv2.FONT_HERSHEY_SIMPLEX, 0.5, color, 1)

# Sonucu göster
filename = "tohumlar-renkli.jpg"
cv2.imshow(filename, img)
cv2.imwrite(filename, img)
cv2.waitKey(0)
cv2.destroyAllWindows()

No module named 'cv2' hatası, OpenCV kütüphanesinin yüklü olmadığını gösterir. Bu hatayı düzeltmek için, OpenCV kütüphanesini yüklemeniz gerekmektedir. Bunun için, aşağıdaki komutu kullanarak OpenCV kütüphanesini yükleyebilirsiniz:

pip install opencv-python

Bu komutu kullanarak OpenCV kütüphanesini yükledikten sonra, kodu yeniden çalıştırarak cv2 modülünün yüklenip yüklenmediğini kontrol edebilirsiniz.

bound-box image processing
0 Beğeni
Python
Önceki Yazı

Midjourney

13 Nis. 2023 tarihinde yayınlandı.
Sonraki Yazı

Flaticon

13 Nis. 2023 tarihinde yayınlandı.
arrow