Imej1 mengandungi segi empat tepat dengan sisa
dan Imej2 mewakili hasil yang diingini.
Saya ingin mendapatkan hasil yang sama seperti Image2 menggunakan Image1 dalam Python, tetapi saya tidak pasti sama ada ia mungkin atau kaedah yang diperlukan.
Saya cuba menggunakan ketelusan imej untuk mengeluarkannya tetapi saya tidak pasti sama ada ini boleh dilakukan.
Imej "sisa" anda kurang tepu daripada "teras"imej, jadi anda boleh membandingkan "sisa" dengan "teras", lihat Ensiklopedia , hvwiki artikel .
Menggunakan imagemagick, saya boleh menukar imej anda kepada ruang warna hsv, buang saluran h
和 v
, dan kemudian hadkan saluran tepu untuk mencari kawasan paling tepu, seperti ini:
magick input.png -colorspace hsv -separate -delete 0,2 -threshold 75% rssult.png
Menggunakan python dan opencv, ia kelihatan lebih kurang seperti ini:
import cv2 as cv import numpy as np # Load image im = cv.imread(YOURIMAGE) # Convert to HSV colourspace and split channels hsv = cv.cvtColor(im, cv.COLOR_BGR2HSV) H, S, V = cv.split(hsv) # Make mask of areas of high saturation coreMask = S > 200 # Scale up from range 0..1 to range 0..255 and save as PNG cv.imwrite('result.png', coreMask * 255)
Jika saya membahagikan imej kepada komponen h, s dan v dan plot h (warna) di sebelah kiri, s (tepu) di tengah dan v (nilai, iaitu kecerahan) di sebelah kanan, anda boleh mendapatkan s di tengah Imej (Tepu), "teras" bentuk mempunyai nilai piksel yang lebih tinggi, "sisa" mempunyai nilai piksel yang lebih rendah:
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar sisa daripada imej menggunakan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!