Rumah pembangunan bahagian belakang Tutorial Python Cara menggunakan Python untuk mengekstrak kontur daripada gambar

Cara menggunakan Python untuk mengekstrak kontur daripada gambar

Aug 26, 2023 pm 04:33 PM
python gambar Pengekstrakan kontur

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.

  1. 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
  2. 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 masuk
  3. Muat imej
    Gunakan fungsi imread 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
  4. 转换为灰度图像
    由于轮廓提取通常在灰度图像上进行,因此需要将彩色图像转换为灰度图像。可以使用OpenCV的cvtColor函数实现。

    gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
    Salin selepas log masuk
  5. 使用阈值进行二值化处理
    轮廓提取常常通过对图像进行二值化处理来实现。可以使用OpenCV的threshold函数将灰度图像转化为二值图像。

    _, threshold = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
    Salin selepas log masuk
  6. 进行轮廓提取
    使用OpenCV的findContours函数对二值图像进行轮廓提取。该函数会返回提取得到的轮廓以及层次结构。

    contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
    Salin selepas log masuk
  7. 绘制轮廓
    可以使用OpenCV的drawContours函数将提取得到的轮廓绘制在原始图像上。

    cv2.drawContours(image, contours, -1, (0, 255, 0), 2)
    Salin selepas log masuk
  8. 显示结果
    最后使用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()
Salin selepas log masuk

结论:
本文介绍了如何使用Python中的OpenCV库对图片进行轮廓提取。通过对图像进行灰度转换、二值化处理和使用findContoursrrreee

🎜🎜Tukar kepada imej skala kelabu🎜Memandangkan pengekstrakan kontur biasanya dilakukan pada imej skala kelabu, imej berwarna perlu ditukar kepada imej skala kelabu. Ia boleh dilaksanakan menggunakan fungsi 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!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara Muat turun DeepSeek Xiaomi Cara Muat turun DeepSeek Xiaomi Feb 19, 2025 pm 05:27 PM

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.

Bagaimana anda bertanya kepadanya Deepseek Bagaimana anda bertanya kepadanya Deepseek Feb 19, 2025 pm 04:42 PM

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.

Cara Mencari DeepSeek Cara Mencari DeepSeek Feb 19, 2025 pm 05:18 PM

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.

Cara Program DeepSeek Cara Program DeepSeek Feb 19, 2025 pm 05:36 PM

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.

Cara menggunakan DeepSeek untuk menyelesaikan akaun Cara menggunakan DeepSeek untuk menyelesaikan akaun Feb 19, 2025 pm 04:36 PM

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)

Cara Mengakses DeepSeekapi - Tutorial Panggilan Akses DeepSeekapi Cara Mengakses DeepSeekapi - Tutorial Panggilan Akses DeepSeekapi Mar 12, 2025 pm 12:24 PM

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

Kemas kini utama Pi Coin: Pi Bank akan datang! Kemas kini utama Pi Coin: Pi Bank akan datang! Mar 03, 2025 pm 06:18 PM

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

Anda Tidak Sendiri: Kuasai Python dengan Komuniti Menyokong di Sisi Anda Anda Tidak Sendiri: Kuasai Python dengan Komuniti Menyokong di Sisi Anda Oct 12, 2024 am 11:58 AM

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).

See all articles