


Cara menggunakan Python untuk mengekstrak kontur daripada gambar
Cara menggunakan Python untuk melakukan pengekstrakan kontur pada gambar
Pengenalan:
Dalam bidang pemprosesan imej dan penglihatan komputer, pengekstrakan kontur adalah tugas yang sangat penting. Ia boleh memisahkan objek sasaran dalam imej dari latar belakang dan mengekstrak maklumat tepi bentuk objek. Artikel ini akan memperkenalkan cara menggunakan perpustakaan OpenCV dalam Python untuk mengekstrak kontur daripada imej.
-
Pasang perpustakaan OpenCV
Sebelum anda bermula, anda perlu memastikan bahawa perpustakaan OpenCV telah dipasang. Anda boleh memasangnya menggunakan arahan pip:pip install opencv-python
Salin selepas log masuk Import perpustakaan yang diperlukan
Pertama, kita perlu mengimport perpustakaan OpenCV dan perpustakaan numpy. OpenCV digunakan untuk pemprosesan imej dan numpy digunakan untuk operasi tatasusunan.import cv2 import numpy as np
Salin selepas log masukMuat imej
Gunakan fungsiimread
OpenCV untuk memuatkan imej. Imej sampel disimpan secara setempat, dan laluan boleh diubah suai mengikut situasi sebenar.imread
函数加载图片。示例图片保存在本地,可以根据实际情况修改路径。image = cv2.imread('path/to/image.jpg')
Salin selepas log masuk转换为灰度图像
由于轮廓提取通常在灰度图像上进行,因此需要将彩色图像转换为灰度图像。可以使用OpenCV的cvtColor
函数实现。gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
Salin selepas log masuk使用阈值进行二值化处理
轮廓提取常常通过对图像进行二值化处理来实现。可以使用OpenCV的threshold
函数将灰度图像转化为二值图像。_, threshold = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
Salin selepas log masuk进行轮廓提取
使用OpenCV的findContours
函数对二值图像进行轮廓提取。该函数会返回提取得到的轮廓以及层次结构。contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
Salin selepas log masuk绘制轮廓
可以使用OpenCV的drawContours
函数将提取得到的轮廓绘制在原始图像上。cv2.drawContours(image, contours, -1, (0, 255, 0), 2)
Salin selepas log masuk显示结果
最后使用OpenCV的imshow
函数显示结果。cv2.imshow('Contours', image) cv2.waitKey(0) cv2.destroyAllWindows()
Salin selepas log masuk
完整代码示例:
import cv2 import numpy as np # 加载图片 image = cv2.imread('path/to/image.jpg') # 转换为灰度图像 gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) # 二值化处理 _, threshold = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY) # 轮廓提取 contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) # 绘制轮廓 cv2.drawContours(image, contours, -1, (0, 255, 0), 2) # 显示结果 cv2.imshow('Contours', image) cv2.waitKey(0) cv2.destroyAllWindows()
结论:
本文介绍了如何使用Python中的OpenCV库对图片进行轮廓提取。通过对图像进行灰度转换、二值化处理和使用findContours
rrreee
cvtColor
OpenCV. 🎜rrreee🎜🎜🎜Penduaan menggunakan ambang🎜Pengestrakan kontur selalunya dicapai dengan menduakan imej. Anda boleh menggunakan fungsi ambang
OpenCV untuk menukar imej skala kelabu kepada imej binari. 🎜rrreee🎜🎜🎜Pengestrakan kontur🎜Gunakan fungsi findContours
OpenCV untuk melaksanakan pengekstrakan kontur pada imej binari. Fungsi ini mengembalikan kontur dan hierarki yang diekstrak. 🎜rrreee🎜🎜🎜Melukis kontur🎜Anda boleh menggunakan fungsi drawContours
OpenCV untuk melukis kontur yang diekstrak pada imej asal. 🎜rrreee🎜🎜🎜Paparkan keputusan🎜Akhir sekali gunakan fungsi imshow
OpenCV untuk memaparkan hasil. 🎜rrreee🎜🎜Contoh kod penuh: 🎜rrreee🎜Kesimpulan: 🎜Artikel ini memperkenalkan cara menggunakan perpustakaan OpenCV dalam Python untuk melaksanakan pengekstrakan kontur pada imej. Dengan melakukan penukaran skala kelabu dan perduaan pada imej dan menggunakan fungsi findContours
untuk mengekstrak kontur, kontur yang diekstrak akhirnya boleh dilukis pada imej asal. Pengekstrakan kontur boleh digunakan secara meluas dalam pemprosesan imej, penglihatan komputer, pengesanan sasaran dan bidang lain, dan merupakan teknologi yang sangat praktikal. 🎜Atas ialah kandungan terperinci Cara menggunakan Python untuk mengekstrak kontur daripada gambar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana untuk memuat turun DeepSeek Xiaomi? Cari "DeepSeek" di kedai aplikasi Xiaomi. Kenal pasti keperluan anda (fail carian, analisis data), dan cari alat yang sepadan (seperti pengurus fail, perisian analisis data) yang termasuk fungsi DeepSeek.

Kunci untuk menggunakan DeepSeek dengan berkesan adalah dengan bertanya dengan jelas: menyatakan soalan secara langsung dan khusus. Berikan maklumat khusus dan maklumat latar belakang. Untuk pertanyaan yang kompleks, pelbagai sudut dan penolakan pendapat dimasukkan. Fokus pada aspek tertentu, seperti kemunculan prestasi dalam kod. Simpan pemikiran kritikal mengenai jawapan yang anda dapatkan dan membuat pertimbangan berdasarkan kepakaran anda.

Hanya gunakan fungsi carian yang datang dengan DeepSeek. Walau bagaimanapun, untuk carian yang tidak popular, maklumat terkini atau masalah yang perlu dipertimbangkan, perlu menyesuaikan kata kunci atau menggunakan penerangan yang lebih spesifik, menggabungkannya dengan sumber maklumat masa nyata yang lain, dan memahami bahawa DeepSeek hanyalah alat yang memerlukannya Strategi carian yang aktif, jelas dan halus.

DeepSeek bukan bahasa pengaturcaraan, tetapi konsep carian yang mendalam. Melaksanakan DeepSeek memerlukan pemilihan berdasarkan bahasa yang ada. Untuk senario aplikasi yang berbeza, perlu memilih bahasa dan algoritma yang sesuai, dan menggabungkan teknologi pembelajaran mesin. Kualiti kod, pemeliharaan, dan ujian adalah penting. Hanya dengan memilih bahasa pengaturcaraan yang betul, algoritma dan alat mengikut keperluan anda dan menulis kod berkualiti tinggi dapat dilaksanakan dengan jayanya.

Soalan: Adakah DeepSeek tersedia untuk perakaunan? Jawapan: Tidak, ia adalah alat perlombongan dan analisis data yang boleh digunakan untuk menganalisis data kewangan, tetapi ia tidak mempunyai rekod perakaunan dan melaporkan fungsi penjanaan perisian perakaunan. Menggunakan DeepSeek untuk menganalisis data kewangan memerlukan kod menulis untuk memproses data dengan pengetahuan struktur data, algoritma, dan API DeepSeek untuk mempertimbangkan masalah yang berpotensi (mis. Pengetahuan pengaturcaraan, lengkung pembelajaran, kualiti data)

Penjelasan terperinci mengenai akses dan panggilan DeepSeekapi: Panduan permulaan cepat Artikel ini akan membimbing anda secara terperinci bagaimana untuk mengakses dan memanggil DeepSeekapi, membantu anda dengan mudah menggunakan model AI yang kuat. Langkah 1: Dapatkan kunci API untuk mengakses laman web rasmi DeepSeek dan klik pada "Platform Terbuka" di sudut kanan atas. Anda akan mendapat sejumlah token percuma (digunakan untuk mengukur penggunaan API). Dalam menu di sebelah kiri, klik "Apikeys" dan kemudian klik "Buat Apikey". Namakan Apikey anda (contohnya, "Ujian") dan salin kunci yang dihasilkan dengan segera. Pastikan untuk menyimpan kunci ini dengan betul, kerana ia hanya akan dipaparkan sekali

Pinetwork akan melancarkan Pibank, platform perbankan mudah alih revolusioner! Pinetwork hari ini mengeluarkan kemas kini utama mengenai Pimisrbank Elmahrosa (muka), yang disebut sebagai Pibank, yang mengintegrasikan dengan baik perkhidmatan perbankan tradisi C). Apakah pesona Pibank? Mari kita cari! Fungsi utama Pibank: Pengurusan sehenti akaun bank dan aset cryptocurrency. Menyokong urus niaga masa nyata dan mengamalkan biospesies

Sertai komuniti Python untuk mendapatkan: Forum komuniti: Dapatkan sokongan dan nasihat daripada pembangun berpengalaman (seperti StackOverflow). Pelayan Discord: Bilik sembang langsung dengan sokongan dan bimbingan segera (seperti PythonDiscord). Kursus dan bengkel dalam talian: Bimbingan daripada pakar yang merangkumi pelbagai topik (seperti kursus PythonNumPy tentang Udemy). Pertemuan tempatan: bertemu secara bersemuka, berkongsi pengetahuan dan membina hubungan (seperti Anna membimbing Bob).
