Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara melukis bentuk geometri pada gambar menggunakan Python

Cara melukis bentuk geometri pada gambar menggunakan Python

WBOY
WBOYasal
2023-08-18 13:02:051828semak imbas

Cara melukis bentuk geometri pada gambar menggunakan Python

Cara menggunakan Python untuk melukis bentuk geometri pada gambar

Pengenalan: Python, sebagai bahasa pengaturcaraan yang berkuasa, bukan sahaja boleh melaksanakan teknologi canggih seperti pemprosesan data dan pembelajaran mesin, tetapi juga pemprosesan imej dan lukisan grafik. Dalam pemprosesan imej, selalunya perlu melukis pelbagai bentuk geometri pada gambar Artikel ini akan memperkenalkan cara menggunakan Python untuk melukis bentuk geometri pada gambar.

1. Penyediaan persekitaran dan pemasangan perpustakaan

Sebelum bermula, kami perlu memasang beberapa perpustakaan yang diperlukan untuk Python, terutamanya termasuk perpustakaan OpenCV dan perpustakaan Matplotlib. Anda boleh memasangnya dengan menggunakan arahan pip, seperti yang ditunjukkan di bawah:

pip install opencv-python
pip install matplotlib

Selepas pemasangan selesai, kita boleh mula menggunakan Python untuk melukis bentuk geometri gambar.

2. Lukis segi empat tepat

Melukis segi empat tepat ialah salah satu lukisan bentuk geometri yang paling mudah dan boleh dicapai melalui fungsi segi empat tepat dalam perpustakaan OpenCV. Berikut ialah kod sampel mudah:

import cv2

Baca imej

img = cv2.imread('image.jpg')

Lukis segi empat tepat

cv2.rectangle(img, (100, 100), (100, 300), 300), (0, 255, 0), 3)

Tunjukkan imej

cv2.imshow('imej', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

kitaDalam kod di atas , mula-mula baca imej melalui fungsi cv2.imread dan simpan pada pembolehubah img. Kemudian kita panggil fungsi cv2.rectangle untuk melukis segi empat tepat, di mana parameter pertama ialah pembolehubah imej, parameter kedua ialah koordinat sudut kiri atas segi empat tepat, parameter ketiga ialah koordinat sudut kanan bawah segi empat tepat, dan parameter keempat ialah warna Parameter kelima ialah lebar garis. Akhir sekali, kami memaparkan imej melalui fungsi cv2.imshow.

3. Lukis bulatan

Melukis bulatan juga boleh dicapai melalui perpustakaan OpenCV, dan anda boleh menggunakan fungsi bulatan. Berikut ialah contoh kod:

import cv2

Baca imej

img = cv2.imread('image.jpg')

Lukis bulatan

cv2.circle(img, (200, 20, 1), 1 (0, 0, 255), -1)

Tunjukkan imej

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Dalam kod di atas, kita mula-mula Baca imej melalui fungsi cv2.imread dan simpan pada pembolehubah img. Kemudian kita panggil fungsi cv2.circle untuk melukis bulatan, di mana parameter pertama ialah pembolehubah imej, parameter kedua ialah koordinat tengah, parameter ketiga ialah jejari, parameter keempat ialah warna, dan parameter kelima ialah Lebar garis, jika ditetapkan kepada -1, memenuhi bulatan. Akhir sekali, kami memaparkan imej melalui fungsi cv2.imshow.

4. Lukis garisan

Melukis garisan juga merupakan keperluan biasa untuk melukis bentuk geometri, yang boleh dicapai menggunakan fungsi garisan dalam perpustakaan OpenCV. Berikut ialah contoh kod:

import cv2

Baca imej

img = cv2.imread('image.jpg')

Lukis garisan

cv2.line(img, (100, 100), (300, 100), (300, 100), (300, 100), (300, 100), (300, 100) , 300), (255, 0, 0), 5)

Tunjukkan imej

cv2.imshow('imej', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Dalam kod di atas Kami juga terlebih dahulu membaca imej melalui fungsi cv2.imread dan menyimpannya ke pembolehubah img. Kemudian kita memanggil fungsi cv2.line untuk melukis garis lurus, di mana parameter pertama ialah pembolehubah gambar, parameter kedua ialah koordinat titik permulaan garisan, parameter ketiga ialah koordinat titik akhir garisan, dan yang keempat parameter ialah warna Parameter kelima ialah lebar baris. Akhir sekali, kami memaparkan imej melalui fungsi cv2.imshow.

5. Lukis poligon

Untuk melukis poligon, anda juga boleh menggunakan fungsi garisan dalam perpustakaan OpenCV Anda hanya perlu melepasi koordinat berbilang titik. Berikut ialah contoh kod:

import cv2

Baca imej

img = cv2.imread('image.jpg')

Tentukan beberapa bucu poligon

pts = np.array([[200, 5] ], [300, 100], [300, 200], [100, 200], [100, 100]], np.int32)

Lukis poligon

cv2.polylines(img, [pts], True, ( 255, 0, 255), 3)

Tunjukkan gambar

cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

Dalam kod di atas, kami juga terlebih dahulu lulus kod di atas Fungsi cv2.imread membaca imej dan menyimpannya ke pembolehubah img. Kemudian kami mentakrifkan mata tatasusunan, yang mengandungi koordinat beberapa bucu poligon. Akhir sekali, kami memanggil fungsi cv2.polylines untuk melukis poligon, di mana parameter pertama ialah pembolehubah imej, parameter kedua ialah tatasusunan bucu, parameter ketiga menunjukkan sama ada hendak menutup poligon, parameter keempat ialah warna, dan parameter kelima ialah lebar baris. Akhir sekali, kami memaparkan imej melalui fungsi cv2.imshow.

Kesimpulan: Artikel ini memperkenalkan secara ringkas cara menggunakan Python untuk melukis bentuk geometri pada gambar, dan memberikan kod sampel untuk segi empat tepat, bulatan, garisan dan poligon. Dengan mempelajari kaedah ini, kami boleh menggunakan Python dengan lebih baik untuk pemprosesan imej dan lukisan grafik. Semoga artikel ini bermanfaat kepada semua.

Atas ialah kandungan terperinci Cara melukis bentuk geometri pada gambar menggunakan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn