Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Sepuluh baris kod Python untuk menggantikan warna latar belakang foto ID

Sepuluh baris kod Python untuk menggantikan warna latar belakang foto ID

WBOY
WBOYke hadapan
2023-05-03 14:01:062086semak imbas

Sepuluh baris kod Python untuk menggantikan warna latar belakang foto ID

Artikel ini mengajar anda cara menukar warna latar belakang foto ID anda melalui program Python, supaya anda tidak perlu risau tentang menukar latar belakang foto ID anda dalam masa hadapan.

Sepuluh baris kod Python untuk menggantikan warna latar belakang foto ID

Idea:

  • Mula-mula keluarkan warna latar belakang foto asal
  • Kemudian tambahkan Warna latar belakang baru

Langkah-langkahnya sangat mudah, ideanya jelas, dan operasinya juga sangat mudah Ia boleh dilakukan dalam sepuluh baris kod saya jamin anda akan mengetahuinya !

Sepuluh baris kod Python untuk menggantikan warna latar belakang foto ID

1. Alih keluar warna latar belakang imej asal

import os
# 去掉背景颜色
os.system('backgroundremover -i "'+str(in_path)+'"-o "cg_output.jpg"')

in_path ialah laluan foto asal, cg_output.jpg ialah yang selepas mengalih keluar Foto latar belakang

Petua: Untuk kegunaan khusus pustaka backgroundremover, sila rujuk artikel saya sebelum ini (satu baris kod Python untuk mengalih keluar latar belakang foto)

2. Tambah warna latar belakang baharu

# 加上背景颜色
no_bg_image = Image.open("cg_output.jpg")
x, y = no_bg_image.size
new_image = Image.new('RGBA', no_bg_image.size, color=color)
new_image.paste(no_bg_image, (0, 0, x, y), no_bg_image)
new_image.save(out_path)

out_path ialah laluan foto selepas menggantikan warna latar belakang, warna ialah warna baharu yang akan diganti, cuma isikan bahasa Inggeris yang sepadan, seperti merah: merah

color = "red"
# 红:red、蓝:blue、黑:black、白:white

Kod penuh

import os
from PIL import Image
# 输入
in_path = "replace.jpg"
# 输出
out_path = "out.png"
# 要替换的背景颜色
color = "red"
# 红:red、蓝:blue、黑:black、白:white
# 去掉背景颜色
os.system('backgroundremover -i "'+str(in_path)+'"-o "cg_output.jpg"')
# 加上背景颜色
no_bg_image = Image.open("cg_output.jpg")
x, y = no_bg_image.size
new_image = Image.new('RGBA', no_bg_image.size, color=color)
new_image.paste(no_bg_image, (0, 0, x, y), no_bg_image)
new_image.save(out_path)

Langkah umum kod:

Ganti.jpg (foto dengan latar belakang biru) into photo out.png with red (color) background color

Di sini saya ingin mengingatkan pembaca bahawa output photo (out.png) mesti disimpan dalam format png Program dalam format lain seperti jpg akan dilaporkan satu kesilapan.

Kesan sampel:

Sepuluh baris kod Python untuk menggantikan warna latar belakang foto ID

(rangkaian sumber gambar)

Kiri ialah gambar asal (biru), dan kanan ialah foto diganti

(Biru ke merah)

Ringkasan

Tidak sukar untuk menggantikan warna latar belakang foto ID dengan Python The idea adalah untuk mengalih keluar latar belakang dahulu dan kemudian menambah warna latar belakang yang baru, saya percaya anda telah mempelajarinya selepas melihat ini.

Atas ialah kandungan terperinci Sepuluh baris kod Python untuk menggantikan warna latar belakang foto ID. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam