Jadual Kandungan
Bagaimana untuk menukar imej kepada tatasusunan NumPy dan menyimpannya sebagai fail CSV menggunakan Python?
Tukar imej kepada susunan NumPy
Kesimpulan
Rumah pembangunan bahagian belakang Tutorial Python Bagaimana untuk menukar imej kepada tatasusunan NumPy menggunakan Python dan menyimpannya sebagai fail CSV?

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

Sep 08, 2023 am 11:17 AM
python csv imej numpy Tukar simpan

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!

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)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan 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)

PHP dan Python: Contoh dan perbandingan kod PHP dan Python: Contoh dan perbandingan kod Apr 15, 2025 am 12:07 AM

PHP dan Python mempunyai kelebihan dan kekurangan mereka sendiri, dan pilihannya bergantung kepada keperluan projek dan keutamaan peribadi. 1.PHP sesuai untuk pembangunan pesat dan penyelenggaraan aplikasi web berskala besar. 2. Python menguasai bidang sains data dan pembelajaran mesin.

Penjelasan terperinci mengenai Prinsip Docker Penjelasan terperinci mengenai Prinsip Docker Apr 14, 2025 pm 11:57 PM

Docker menggunakan ciri -ciri kernel Linux untuk menyediakan persekitaran berjalan yang cekap dan terpencil. Prinsip kerjanya adalah seperti berikut: 1. Cermin digunakan sebagai templat baca sahaja, yang mengandungi semua yang anda perlukan untuk menjalankan aplikasi; 2. Sistem Fail Kesatuan (Unionfs) menyusun pelbagai sistem fail, hanya menyimpan perbezaan, menjimatkan ruang dan mempercepatkan; 3. Daemon menguruskan cermin dan bekas, dan pelanggan menggunakannya untuk interaksi; 4. Ruang nama dan cgroups melaksanakan pengasingan kontena dan batasan sumber; 5. Pelbagai mod rangkaian menyokong interkoneksi kontena. Hanya dengan memahami konsep -konsep teras ini, anda boleh menggunakan Docker dengan lebih baik.

Cara Melatih Model Pytorch di CentOs Cara Melatih Model Pytorch di CentOs Apr 14, 2025 pm 03:03 PM

Latihan yang cekap model pytorch pada sistem CentOS memerlukan langkah -langkah, dan artikel ini akan memberikan panduan terperinci. 1. Penyediaan Persekitaran: Pemasangan Python dan Ketergantungan: Sistem CentOS biasanya mempamerkan python, tetapi versi mungkin lebih tua. Adalah disyorkan untuk menggunakan YUM atau DNF untuk memasang Python 3 dan menaik taraf PIP: Sudoyumupdatepython3 (atau SudodnfupdatePython3), pip3install-upgradepip. CUDA dan CUDNN (Percepatan GPU): Jika anda menggunakan Nvidiagpu, anda perlu memasang Cudatool

Bagaimana sokongan GPU untuk Pytorch di CentOS Bagaimana sokongan GPU untuk Pytorch di CentOS Apr 14, 2025 pm 06:48 PM

Membolehkan pecutan GPU pytorch pada sistem CentOS memerlukan pemasangan cuda, cudnn dan GPU versi pytorch. Langkah-langkah berikut akan membimbing anda melalui proses: Pemasangan CUDA dan CUDNN Tentukan keserasian versi CUDA: Gunakan perintah NVIDIA-SMI untuk melihat versi CUDA yang disokong oleh kad grafik NVIDIA anda. Sebagai contoh, kad grafik MX450 anda boleh menyokong CUDA11.1 atau lebih tinggi. Muat turun dan pasang Cudatoolkit: Lawati laman web rasmi Nvidiacudatoolkit dan muat turun dan pasang versi yang sepadan mengikut versi CUDA tertinggi yang disokong oleh kad grafik anda. Pasang Perpustakaan Cudnn:

Python vs JavaScript: Komuniti, Perpustakaan, dan Sumber Python vs JavaScript: Komuniti, Perpustakaan, dan Sumber Apr 15, 2025 am 12:16 AM

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Cara Memilih Versi PyTorch Di Bawah Centos Cara Memilih Versi PyTorch Di Bawah Centos Apr 14, 2025 pm 02:51 PM

Apabila memilih versi pytorch di bawah CentOS, faktor utama berikut perlu dipertimbangkan: 1. Keserasian versi CUDA Sokongan GPU: Jika anda mempunyai NVIDIA GPU dan ingin menggunakan pecutan GPU, anda perlu memilih pytorch yang menyokong versi CUDA yang sepadan. Anda boleh melihat versi CUDA yang disokong dengan menjalankan arahan NVIDIA-SMI. Versi CPU: Jika anda tidak mempunyai GPU atau tidak mahu menggunakan GPU, anda boleh memilih versi CPU PyTorch. 2. Pytorch versi python

Cara melakukan pra -proses data dengan pytorch di centOs Cara melakukan pra -proses data dengan pytorch di centOs Apr 14, 2025 pm 02:15 PM

Dengan cekap memproses data pitorch pada sistem CentOS, langkah-langkah berikut diperlukan: Pemasangan Ketergantungan: Kemas kini pertama sistem dan pasang Python3 dan PIP: Sudoyumupdate-iSudoyumStallpython3-Isudoyumstallpython3-y Konfigurasi Persekitaran Maya (disyorkan): Gunakan Conda untuk membuat dan mengaktifkan persekitaran maya baru, contohnya: condacreate-n

Cara Memasang Nginx di CentOs Cara Memasang Nginx di CentOs Apr 14, 2025 pm 08:06 PM

CentOS Memasang Nginx memerlukan mengikuti langkah-langkah berikut: memasang kebergantungan seperti alat pembangunan, pcre-devel, dan openssl-devel. Muat turun Pakej Kod Sumber Nginx, unzip dan menyusun dan memasangnya, dan tentukan laluan pemasangan sebagai/usr/local/nginx. Buat pengguna Nginx dan kumpulan pengguna dan tetapkan kebenaran. Ubah suai fail konfigurasi nginx.conf, dan konfigurasikan port pendengaran dan nama domain/alamat IP. Mulakan perkhidmatan Nginx. Kesalahan biasa perlu diberi perhatian, seperti isu ketergantungan, konflik pelabuhan, dan kesilapan fail konfigurasi. Pengoptimuman prestasi perlu diselaraskan mengikut keadaan tertentu, seperti menghidupkan cache dan menyesuaikan bilangan proses pekerja.

See all articles