国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語(yǔ)言編程技術(shù)及教程分享平臺(tái)!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Python - Python 實(shí)現(xiàn)圖片色彩轉(zhuǎn)換案例

Python 實(shí)現(xiàn)圖片色彩轉(zhuǎn)換案例

2022-03-05 14:07劍客阿良_ALiang Python

我們?cè)诳磩?dòng)漫、影視作品中,當(dāng)人物在回憶過(guò)程中,體現(xiàn)出來(lái)的畫面一般都是黑白或者褐色的。本文將提供將圖片色彩轉(zhuǎn)為黑白或者褐色風(fēng)格的案例詳解,感興趣的小伙伴可以了解一下。

前言

本文提供將圖片色彩轉(zhuǎn)為黑白或者褐色風(fēng)格。比較類似于我們?cè)诳磩?dòng)漫、影視作品中,當(dāng)人物在回憶過(guò)程中,體現(xiàn)出來(lái)的畫面一般都是黑白或者褐色的。

環(huán)境依賴

ffmpeg環(huán)境依賴,ffmpy依賴安裝

pip install ffmpy -i https://pypi.douban.com/simple

 

代碼

不廢話,上代碼

#!/user/bin/env python
# coding=utf-8
"""
@project : csdn
@author  : 劍客阿良_ALiang
@file   : image_change_color_tool.py
@ide    : PyCharm
@time   : 2021-11-19 15:10:22
"""
import os
import uuid
from ffmpy import FFmpeg


# 黑白圖
def black_and_white(image_path: str, output_dir: str):
  ext = _check_format(image_path)
  result = os.path.join(output_dir, '{}.{}'.format(uuid.uuid4(), ext))
  ff = FFmpeg(inputs={image_path: None},
              outputs={result: '-vf colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3 -y'})
  print(ff.cmd)
  ff.run()
  return result


# 褐色
def brown(image_path: str, output_dir: str):
  ext = _check_format(image_path)
  result = os.path.join(output_dir, '{}.{}'.format(uuid.uuid4(), ext))
  ff = FFmpeg(inputs={image_path: None},
              outputs={result: '-vf colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131 -y'})
  print(ff.cmd)
  ff.run()
  return result


def _check_format(image_path: str):
  ext = os.path.basename(image_path).strip().split('.')[-1]
  if ext not in ['png', 'jpg']:
      raise Exception('format error')
  return ext

代碼說(shuō)明

1、兩個(gè)方法入?yún)⒕鶠椋簣D片路徑、輸出目錄路徑。

2、為了避免文件名重復(fù),使用uuid作為文件名。

3、圖片的后綴格式判斷只有兩種,如需增加,自行添加即可。

驗(yàn)證一下

圖片準(zhǔn)備,原圖如下:

Python 實(shí)現(xiàn)圖片色彩轉(zhuǎn)換案例

驗(yàn)證代碼

if __name__ == '__main__':
  print(black_and_white('C:/Users/huyi/Desktop/4.jpg', 'C:/Users/huyi/Desktop/'))
  print(brown('C:/Users/huyi/Desktop/4.jpg', 'C:/Users/huyi/Desktop/'))

 

執(zhí)行結(jié)果

PyDev console: starting.
Python 3.6.13 |Anaconda, Inc.| (default, Mar 16 2021, 11:37:27) [MSC v.1916 64 bit (AMD64)] on win32
runfile('D:/spyder/csdn/image_change_color_tool.py', wdir='D:/spyder/csdn')
ffmpeg -i C:/Users/huyi/Desktop/4.jpg -vf colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3 -y C:/Users/huyi/Desktop/c7052ed8-d5db-4e84-9c01-88d661c967a5.jpg
ffmpeg version n4.3.1-20-g8a2acdc6da Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9.3-win32 (GCC) 20200320
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-zlib --enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvmaf --disable-vulkan --enable-libvorbis --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-ffnvcodec --enable-cuda-llvm --disable-libglslang --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libtwolame --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-libs=-lgomp
libavutil      56. 51.100 / 56. 51.100
libavcodec     58. 91.100 / 58. 91.100
libavformat    58. 45.100 / 58. 45.100
libavdevice    58. 10.100 / 58. 10.100
libavfilter     7. 85.100 /  7. 85.100
libswscale      5.  7.100 /  5.  7.100
libswresample   3.  7.100 /  3.  7.100
libpostproc    55.  7.100 / 55.  7.100
Input #0, image2, from 'C:/Users/huyi/Desktop/4.jpg':
Duration: 00:00:00.04, start: 0.000000, bitrate: 101138 kb/s
  Stream #0:0: Video: mjpeg (Progressive), yuvj444p(pc, bt470bg/unknown/unknown), 1920x1080, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[swscaler @ 000001625402e2c0] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0000016253b14f80] deprecated pixel format used, make sure you did set range correctly
Output #0, image2, to 'C:/Users/huyi/Desktop/c7052ed8-d5db-4e84-9c01-88d661c967a5.jpg':
Metadata:
  encoder         : Lavf58.45.100
  Stream #0:0: Video: mjpeg, yuvj444p(pc), 1920x1080, q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
  Metadata:
    encoder         : Lavc58.91.100 mjpeg
  Side data:
    cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
frame=    1 fps=0.0 q=9.2 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.232x    
video:133kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
C:/Users/huyi/Desktop/c7052ed8-d5db-4e84-9c01-88d661c967a5.jpg
ffmpeg -i C:/Users/huyi/Desktop/4.jpg -vf colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131 -y C:/Users/huyi/Desktop/9282f36a-2361-4b0d-a115-56864c9d2337.jpg
ffmpeg version n4.3.1-20-g8a2acdc6da Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9.3-win32 (GCC) 20200320
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-zlib --enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvmaf --disable-vulkan --enable-libvorbis --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-ffnvcodec --enable-cuda-llvm --disable-libglslang --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libtwolame --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-libs=-lgomp
libavutil      56. 51.100 / 56. 51.100
libavcodec     58. 91.100 / 58. 91.100
libavformat    58. 45.100 / 58. 45.100
libavdevice    58. 10.100 / 58. 10.100
libavfilter     7. 85.100 /  7. 85.100
libswscale      5.  7.100 /  5.  7.100
libswresample   3.  7.100 /  3.  7.100
libpostproc    55.  7.100 / 55.  7.100
Input #0, image2, from 'C:/Users/huyi/Desktop/4.jpg':
Duration: 00:00:00.04, start: 0.000000, bitrate: 101138 kb/s
  Stream #0:0: Video: mjpeg (Progressive), yuvj444p(pc, bt470bg/unknown/unknown), 1920x1080, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> mjpeg (native))
Press [q] to stop, [?] for help
[swscaler @ 0000013b05762f80] deprecated pixel format used, make sure you did set range correctly
[swscaler @ 0000013b052c4fc0] deprecated pixel format used, make sure you did set range correctly
Output #0, image2, to 'C:/Users/huyi/Desktop/9282f36a-2361-4b0d-a115-56864c9d2337.jpg':
Metadata:
  encoder         : Lavf58.45.100
  Stream #0:0: Video: mjpeg, yuvj444p(pc), 1920x1080, q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
  Metadata:
    encoder         : Lavc58.91.100 mjpeg
  Side data:
    cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
frame=    1 fps=0.0 q=9.5 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.129x    
video:177kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
C:/Users/huyi/Desktop/9282f36a-2361-4b0d-a115-56864c9d2337.jpg

黑白圖效果

Python 實(shí)現(xiàn)圖片色彩轉(zhuǎn)換案例

褐色圖效果

Python 實(shí)現(xiàn)圖片色彩轉(zhuǎn)換案例

到此這篇關(guān)于Python 實(shí)現(xiàn)圖片色彩轉(zhuǎn)換案例的文章就介紹到這了,更多相關(guān)Python 圖片色彩轉(zhuǎn)換內(nèi)容請(qǐng)搜索服務(wù)器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務(wù)器之家!

原文鏈接:https://huyi-aliang.blog.csdn.net/article/details/121428086

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 免费一级特黄做受大片 | 欧美激情精品久久久久久 | 中文字字幕一区二区三区四区五区 | 亚洲综合av在线播放 | 日韩电影中文字幕 | 91精品福利少妇午夜100集 | 国产露脸国语对白在线 | 91精品国产综合久久久久久丝袜 | 国产视频黄在线观看 | 黄色av大片 | 亚洲国产成人91精品 | 久久久久国产精品免费免费搜索 | 久久久精品一区二区三区 | 日韩免费高清在线 | 中文字幕视频一区 | 国产精品无码久久久久 | av片免费 | 成人羞羞视频免费 | 人人射在线观看 | 久久精品亚洲成在人线av网址 | 国产精品99久久免费观看 | 国产一区二区在线免费 | 久久视频一区 | 亚洲一区二区三区在线免费观看 | 97精品国产97久久久久久免费 | 欧美精品一区二区三区蜜桃视频 | 在线播放中文字幕 | 国产在线视频网 | 亚洲影音 | 亚洲精品久久久久久下一站 | 亚洲视频精品一区 | 黄色福利视频 | 欧美午夜精品久久久久久浪潮 | 视频一二区 | 欧美精品在线播放 | 欧美黄色小视频 | 欧美国产精品一区二区三区 | 久久夜视频 | 波多野结衣福利电影 | 欧美疯狂性受xxxxx另类 | 国产精品久久久久久婷婷天堂 |