Rumah >pembangunan bahagian belakang >Tutorial Python >Contoh Penglihatan Komputer dalam Python: Transformasi Imej

Contoh Penglihatan Komputer dalam Python: Transformasi Imej

WBOY
WBOYasal
2023-06-10 09:04:431253semak imbas

Dengan perkembangan berterusan teknologi komputer moden, teknologi penglihatan komputer telah menjadi salah satu cabang penting pemprosesan imej digital dan grafik komputer. Teknologi penglihatan komputer boleh memproses dan menganalisis imej supaya pengguna boleh mendapatkan maklumat dan menyelesaikan tugas sasaran. Dalam artikel ini, kami akan meneroka beberapa contoh penglihatan komputer yang ditulis dalam Python, khususnya, transformasi imej. Kami akan merangkumi beberapa kaedah transformasi imej biasa, seperti putaran, penskalaan, pemangkasan, flipping, dsb.

Pertama, mari kita lihat cara melaksanakan fungsi putaran imej dalam Python. Putaran ialah teknik transformasi imej yang biasa digunakan. Dalam Python, kita boleh menggunakan OpenCV untuk mencapai putaran imej. OpenCV ialah perpustakaan penglihatan komputer yang berkuasa dengan banyak fungsi yang mudah dan mudah digunakan yang boleh memproses dan menganalisis imej dengan mudah. Berikut ialah contoh kod Python mudah yang menunjukkan cara menggunakan OpenCV untuk melaksanakan putaran imej:

import cv2

# 读取图像
image = cv2.imread('image.jpg')

# 图像旋转
(h, w) = image.shape[:2]
center = (w // 2, h // 2)
M = cv2.getRotationMatrix2D(center, 45, 1.0)
image = cv2.warpAffine(image, M, (w, h))

# 显示图像
cv2.imshow('Rotated Image', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

Dalam contoh ini, kita mula-mula membaca imej input menggunakan fungsi cv2.imread. Seterusnya, kami menggunakan fungsi cv2.getRotationMatrix2D untuk mentakrifkan matriks putaran. Fungsi ini perlu lulus dalam tiga parameter: pusat putaran, sudut putaran dan nisbah skala. Akhir sekali, kami menggunakan fungsi cv2.warpAffine untuk memutarkan imej. Fungsi ini perlu lulus dalam tiga parameter: imej input, matriks transformasi dan saiz imej output. Selepas memproses imej, kami menggunakan fungsi cv2.imshow untuk memaparkan imej yang diputar, kemudian gunakan fungsi cv2.waitKey untuk menunggu ketukan kekunci pengguna, dan akhirnya menggunakan fungsi cv2.destroyAllWindows untuk menutup semua tetingkap.

Seterusnya, mari kita lihat cara menggunakan Python untuk melaksanakan fungsi penskalaan imej. Penskalaan adalah teknik transformasi imej yang sangat penting yang boleh menjadikan imej lebih kecil atau lebih besar. Dalam Python, kita juga boleh menggunakan OpenCV untuk mencapai penskalaan imej. Berikut ialah contoh kod Python mudah yang menunjukkan cara menggunakan OpenCV untuk melaksanakan penskalaan imej:

import cv2

# 读取图像
image = cv2.imread('image.jpg')

# 图像缩放
scale_percent = 50
width = int(image.shape[1] * scale_percent / 100)
height = int(image.shape[0] * scale_percent / 100)
dim = (width, height)
image = cv2.resize(image, dim, interpolation = cv2.INTER_AREA)

# 显示图像
cv2.imshow('Resized Image', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

Dalam contoh ini, kami menggunakan fungsi cv2.imread untuk membaca imej input. Seterusnya, kami mentakrifkan nisbah penskalaan dan mengira lebar dan ketinggian imej baharu berdasarkan nisbah tersebut. Akhir sekali, kami menggunakan fungsi cv2.resize untuk menskalakan imej. Fungsi ini memerlukan tiga parameter: imej input, saiz imej baharu dan kaedah interpolasi. Selepas memproses imej, kami menggunakan fungsi cv2.imshow untuk memaparkan imej yang dizum, kemudian gunakan fungsi cv2.waitKey untuk menunggu ketukan kekunci pengguna, dan akhirnya menggunakan fungsi cv2.destroyAllWindows untuk menutup semua tetingkap.

Selain penggiliran dan penskalaan imej, Python juga boleh melaksanakan banyak fungsi transformasi imej lain, seperti memangkas, membalikkan, affine, dsb. Teknologi transformasi imej ini boleh digunakan secara meluas dalam bidang penglihatan komputer, seperti pemprosesan imej, grafik komputer, pembelajaran mesin, dll. Dengan mempelajari contoh penglihatan komputer dalam Python, kita boleh memperoleh pemahaman yang lebih mendalam tentang prinsip dan kaedah transformasi imej dan meletakkan asas yang baik untuk kerja masa hadapan.

Atas ialah kandungan terperinci Contoh Penglihatan Komputer dalam Python: Transformasi Imej. 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