Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk mengalih keluar sisa daripada imej menggunakan Python

Bagaimana untuk mengalih keluar sisa daripada imej menggunakan Python

王林
Lepaskan: 2024-02-06 08:30:12
ke hadapan
887 orang telah melayarinya

如何使用 Python 去除图像中的残差

Kandungan soalan

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.


Jawapan betul


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 hv, 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
Salin selepas log masuk

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)
Salin selepas log masuk

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!

sumber:stackoverflow.com
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan