


Bagaimana untuk melaraskan kecerahan dan kontras imej menggunakan PHP
Cara melaraskan kecerahan dan kontras gambar menggunakan PHP
Kecerahan dan kontras adalah salah satu faktor penting dalam melaraskan kesan visual gambar. Dalam pemprosesan imej, anda boleh menjadikan gambar lebih cerah atau lebih gelap dengan melaraskan kecerahan, dan anda boleh meningkatkan atau melemahkan perbezaan antara warna berbeza dalam gambar dengan melaraskan kontras.
PHP, sebagai bahasa skrip sebelah pelayan yang biasa digunakan, menyediakan pelbagai fungsi pemprosesan imej dan perpustakaan. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaraskan kecerahan dan kontras imej, dengan contoh kod.
- Laraskan kecerahan gambar
Melaraskan kecerahan gambar boleh dicapai dengan menukar nilai RGB piksel. Di bawah ialah contoh fungsi yang menggunakan perpustakaan PHP GD untuk melaraskan kecerahan imej.
function adjustBrightness($imagePath, $brightness) { $image = imagecreatefromjpeg($imagePath); $width = imagesx($image); $height = imagesy($image); for ($x = 0; $x < $width; $x++) { for ($y = 0; $y < $height; $y++) { $rgb = imagecolorat($image, $x, $y); $oldR = ($rgb >> 16) & 0xFF; $oldG = ($rgb >> 8) & 0xFF; $oldB = $rgb & 0xFF; $newR = $oldR + $brightness; $newG = $oldG + $brightness; $newB = $oldB + $brightness; $newR = max(0, min(255, $newR)); $newG = max(0, min(255, $newG)); $newB = max(0, min(255, $newB)); $newRgb = ($newR << 16) + ($newG << 8) + $newB; imagesetpixel($image, $x, $y, $newRgb); } } imagejpeg($image, 'adjusted_image.jpg'); imagedestroy($image); } // 使用示例 adjustBrightness('original_image.jpg', 50); // 将亮度增加50
Kod di atas merentasi setiap piksel imej, memperoleh nilai RGB asal dan mengira nilai RGB baharu berdasarkan nilai kecerahan yang ditentukan, kemudian menggunakan fungsi imagesetpixel
untuk menetapkan nilai piksel baharu, dan akhirnya menghasilkan gambar Dilaraskan. imagesetpixel
函数设置新的像素值,最终生成一张调整后的图片。
- 调整图片对比度
调整图片的对比度可以通过调整像素的RGB值的范围来实现。下面是一个示例函数,使用PHP GD库来调整图片的对比度。
function adjustContrast($imagePath, $contrast) { $image = imagecreatefromjpeg($imagePath); $width = imagesx($image); $height = imagesy($image); for ($x = 0; $x < $width; $x++) { for ($y = 0; $y < $height; $y++) { $rgb = imagecolorat($image, $x, $y); $oldR = ($rgb >> 16) & 0xFF; $oldG = ($rgb >> 8) & 0xFF; $oldB = $rgb & 0xFF; $newR = ($oldR - 127) * $contrast + 127; $newG = ($oldG - 127) * $contrast + 127; $newB = ($oldB - 127) * $contrast + 127; $newR = max(0, min(255, $newR)); $newG = max(0, min(255, $newG)); $newB = max(0, min(255, $newB)); $newRgb = ($newR << 16) + ($newG << 8) + $newB; imagesetpixel($image, $x, $y, $newRgb); } } imagejpeg($image, 'adjusted_image.jpg'); imagedestroy($image); } // 使用示例 adjustContrast('original_image.jpg', 1.5); // 将对比度增加1.5倍
以上代码通过遍历图片的每个像素,获取原始RGB值并根据指定的对比度值计算新的RGB值,然后使用imagesetpixel
- Laraskan kontras gambar🎜Melaraskan kontras gambar boleh dicapai dengan melaraskan julat nilai RGB piksel. Di bawah ialah contoh fungsi yang menggunakan perpustakaan PHP GD untuk melaraskan kontras imej. 🎜rrreee🎜Kod di atas merentasi setiap piksel imej, memperoleh nilai RGB asal dan mengira nilai RGB baharu berdasarkan nilai kontras yang ditentukan, kemudian menggunakan fungsi
imagesetpixel
untuk menetapkan nilai piksel baharu, dan akhirnya menghasilkan gambar Dilaraskan. 🎜🎜Menggunakan PHP untuk melaraskan kecerahan dan kontras imej boleh menyediakan pembangun tapak web dengan lebih banyak pilihan pemprosesan imej untuk mencapai kesan visual yang lebih baik. Semoga contoh kod dalam artikel ini akan membantu anda mencapai matlamat ini. 🎜Atas ialah kandungan terperinci Bagaimana untuk melaraskan kecerahan dan kontras imej menggunakan PHP. 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



Laravel memudahkan mengendalikan data sesi sementara menggunakan kaedah flash intuitifnya. Ini sesuai untuk memaparkan mesej ringkas, makluman, atau pemberitahuan dalam permohonan anda. Data hanya berterusan untuk permintaan seterusnya secara lalai: $ permintaan-

Pelanjutan URL Pelanggan PHP (CURL) adalah alat yang berkuasa untuk pemaju, membolehkan interaksi lancar dengan pelayan jauh dan API rehat. Dengan memanfaatkan libcurl, perpustakaan pemindahan fail multi-protokol yang dihormati, php curl memudahkan execu yang cekap

Alipay Php ...

Laravel menyediakan sintaks simulasi respons HTTP ringkas, memudahkan ujian interaksi HTTP. Pendekatan ini dengan ketara mengurangkan redundansi kod semasa membuat simulasi ujian anda lebih intuitif. Pelaksanaan asas menyediakan pelbagai jenis pintasan jenis tindak balas: Gunakan Illuminate \ Support \ Facades \ http; Http :: palsu ([ 'Google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

Adakah anda ingin memberikan penyelesaian segera, segera kepada masalah yang paling mendesak pelanggan anda? Sembang langsung membolehkan anda mempunyai perbualan masa nyata dengan pelanggan dan menyelesaikan masalah mereka dengan serta-merta. Ia membolehkan anda memberikan perkhidmatan yang lebih pantas kepada adat anda

Artikel membincangkan pengikatan statik lewat (LSB) dalam PHP, yang diperkenalkan dalam Php 5.3, yang membolehkan resolusi runtime kaedah statik memerlukan lebih banyak warisan yang fleksibel. Isu: LSB vs polimorfisme tradisional; Aplikasi Praktikal LSB dan Potensi Perfo

Artikel membincangkan ciri -ciri keselamatan penting dalam rangka kerja untuk melindungi daripada kelemahan, termasuk pengesahan input, pengesahan, dan kemas kini tetap.

Artikel ini membincangkan menambah fungsi khusus kepada kerangka kerja, memberi tumpuan kepada pemahaman seni bina, mengenal pasti titik lanjutan, dan amalan terbaik untuk integrasi dan debugging.
