Bagaimana untuk menukar imej kepada tatasusunan NumPy menggunakan Python dan menyimpannya sebagai fail CSV?

王林
Lepaskan: 2023-09-08 11:17:02
ke hadapan
1149 orang telah melayarinya

Bagaimana untuk menukar imej kepada tatasusunan NumPy menggunakan Python dan menyimpannya sebagai fail CSV?

Python ialah bahasa pengaturcaraan yang berkuasa dengan sejumlah besar perpustakaan dan modul. Satu perpustakaan sedemikian ialah NumPy, yang digunakan untuk pengiraan berangka dan pemprosesan tatasusunan dan matriks berbilang dimensi yang besar. Satu lagi perpustakaan popular untuk pemprosesan imej dalam Python ialah Bantal, yang merupakan garpu Perpustakaan Pengimejan Python (PIL).

Dalam tutorial ini, kami akan menunjukkan kepada anda cara menukar imej kepada tatasusunan NumPy dan menyimpannya ke fail CSV menggunakan Python. Kami akan menggunakan perpustakaan Bantal untuk membuka dan menukar imej kepada tatasusunan NumPy, dan modul CSV untuk menyimpan tatasusunan NumPy ke fail CSV. Dalam bahagian seterusnya artikel ini, kami akan membincangkan langkah-langkah yang diperlukan untuk menukar imej kepada tatasusunan NumPy menggunakan perpustakaan Bantal. Jadi, mari mulakan!

Bagaimana untuk menukar imej kepada tatasusunan NumPy dan menyimpannya sebagai fail CSV menggunakan Python?

Sebelum kita menyelami proses menukar imej kepada tatasusunan NumPy dan menyimpannya ke fail CSV, mari kita lihat dahulu dua perpustakaan yang akan kami gunakan dalam tutorial ini: Bantal dan NumPy.

Bantal ialah Perpustakaan Pengimejan Python (PIL) yang menambah sokongan untuk membuka, memanipulasi dan menyimpan banyak format fail imej yang berbeza.

NumPy ialah perpustakaan asas untuk pengkomputeran saintifik dalam Python. Ia menyediakan sokongan untuk tatasusunan dan matriks berbilang dimensi yang besar, serta pelbagai fungsi matematik yang beroperasi padanya.

Untuk menggunakan perpustakaan ini, kami perlu memasangnya pada sistem kami terlebih dahulu. Kita boleh melakukan ini menggunakan pip pemasang pakej Python.

Begini cara memasang Bantal:

pip install Pillow
Salin selepas log masuk

Begini cara memasang NumPy:

pip install numpy
Salin selepas log masuk

Sekarang kita telah memasang perpustakaan yang diperlukan, mari kita beralih ke bahagian seterusnya artikel ini, menukar imej kepada tatasusunan NumPy.

Tukar imej kepada susunan NumPy

Pertimbangkan kod berikut yang menukar imej kepada tatasusunan Numpy:

# Import necessary libraries
import csv
from PIL import Image
import numpy as np

# Open image using Pillow library
img = Image.open('image.jpg')

# Convert image to NumPy array
np_array = np.array(img)

# Save NumPy array to CSV file
np.savetxt('output.csv', np_array, delimiter=',', fmt='%d')

# Print the shape of the NumPy array
print("Shape of NumPy array:", np_array.shape)
Salin selepas log masuk

Dalam kod di atas, kami mula-mula mengimport perpustakaan csv, PIL dan numpy yang diperlukan. Pustaka CSV digunakan untuk membaca dan menulis fail CSV, manakala pustaka PIL digunakan untuk membuka dan memanipulasi imej. Pustaka NumPy digunakan untuk menukar imej kepada tatasusunan NumPy.

Kemudian kami membuka fail imej bernama image.jpg menggunakan kaedah Image.open() daripada perpustakaan PIL. Kaedah ini mengembalikan objek Imej.

Selepas itu, gunakan kaedah np.array() daripada perpustakaan NumPy untuk menukar objek imej kepada tatasusunan NumPy. Tatasusunan yang dihasilkan mengandungi nilai piksel imej. Akhir sekali, kami menyimpan tatasusunan NumPy ke fail CSV bernama output.csv menggunakan kaedah np.savetxt() daripada pustaka NumPy. Kami menentukan pembatas sebagai "," dan format sebagai %d untuk memastikan bahawa nilai dalam fail CSV dipisahkan koma dan integer.

Akhir sekali, kami mencetak bentuk tatasusunan NumPy menggunakan sifat bentuk. Bentuk tatasusunan NumPy mewakili dimensi tatasusunan, dalam kes ini ketinggian, lebar dan bilangan saluran warna (jika berkenaan).

Output kod di atas akan mencipta fail baharu yang dipanggil output.csv dalam direktori yang sama dengan skrip, yang mengandungi nilai piksel imej dalam format CSV, dan terminal akan memaparkan perkara berikut:

Shape of NumPy array: (505, 600, 3)
Salin selepas log masuk

Di sini, bentuk tatasusunan NumPy ialah (505, 600, 3), yang bermaksud ketinggian dan lebar imej ialah 100 piksel setiap satu, dan setiap piksel mempunyai 3 saluran warna (RGB).

Perlu diingat bahawa bentuk tatasusunan NumPy bergantung pada dimensi imej input. Jika imej ialah imej berwarna, bentuk tatasusunan adalah (tinggi, lebar, bilangan saluran warna);

Kesimpulan

Dalam artikel ini, kami mempelajari cara menukar imej kepada tatasusunan NumPy dan menyimpannya ke fail CSV menggunakan Python. Kami menggunakan perpustakaan Bantal untuk membuka dan menukar imej kepada tatasusunan NumPy, dan menggunakan modul CSV untuk menyimpan tatasusunan NumPy ke fail CSV. Kami juga merangkumi langkah-langkah yang diperlukan untuk memasang perpustakaan yang diperlukan dan menyediakan kod sampel untuk setiap kaedah. Adalah penting untuk ambil perhatian bahawa bentuk tatasusunan NumPy bergantung pada dimensi imej input, dan bentuk tatasusunan akan berbeza untuk imej warna dan skala kelabu. Dengan menggunakan teknik ini, kami boleh memanipulasi dan memproses imej dengan mudah menggunakan perpustakaan NumPy yang berkuasa.

Atas ialah kandungan terperinci Bagaimana untuk menukar imej kepada tatasusunan NumPy menggunakan Python dan menyimpannya sebagai fail CSV?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!