日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Python之将彩色图片批量转化为黑白图片

發布時間:2024/5/21 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python之将彩色图片批量转化为黑白图片 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、前言

  • 最近遇到了一個新的情景,需要將彩色圖片轉化為黑白圖片,如果手動地去轉化一張一張圖片,那就真的太原始,效率太低。

  • 用 Python,只需要幾行代碼就可以在幾秒內轉化上千張圖片。而且,這個功能的用途相當廣泛,不僅能使圖片變得深邃,而且還可以簡化一些復雜模型的數學計算。

二、準備

① Python 安裝

  • 在 windows 上安裝 Python:
    • 下載 Python 的最新版本:訪問鏈接 Python 官網,在 Windows 操作系統上安裝 Python 3.10.0,大家也可以自行選擇最新版的下載。

    • 進入下一個頁面后,拉到最下面,選擇 Windows embeddable package (64-bit) 下載:

    • 雙擊下載完成的應用程序,記得一定要勾選 ADD Python 3.7 to PATH,否則 cmd 無法運行 Python,然后選擇 Install Now 進行安裝,默認會安裝 pip,而且將安裝到 C 盤(推薦)。如果希望換一個盤安裝,可以點擊 Customize installation 在里面選擇其他的盤。
  • 在 macOS 上安裝 Python:
    • 其實 macOS 上是默認安裝了 Python 的,只不過版本是 Python2.7,其相對于現在的 Python 3 缺少了很多特性,而且速度也比 Python 3 慢,因此還是建議大家裝 Python 3。
    • 同樣地,下載 Python 的最新版本,訪問鏈接:Python 官網,在 macOS 操作系統上安裝 Python 3.7.4,大家也可以自行選擇最新版的下載。

    • 進入下一個頁面后,拉到最下面,選擇 macOS 64-bit universal2 installer 下載:

    • 下載完成后得到一個 pkg 文件,雙擊打開,按照指示步驟進行安裝即可。

② 安裝依賴

  • 確保 Python 和 pip 已經成功安裝在電腦上,Windows 環境下打開 Cmd(開始—運行—CMD),蘋果系統環境下請打開 Terminal(command+空格輸入Terminal),準備開始輸入命令安裝依賴。
  • 當然,我更推薦大家用 VS Code 編輯器,把本文代碼 Copy 下來,在編輯器下方的終端裝依賴模塊。
  • 在終端輸入以下命令,安裝所需要的依賴模塊:
pip install pillow -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
  • 看到 Successfully installed xxx 則說明安裝成功。

三、編碼實現

  • 首先編寫一下彩色圖轉單色圖的轉化函數,接收兩個參數,一個是輸入文件的路徑,一個是輸出文件路徑:
from PIL import Image def colorful to_ single(input_ img path, output_ img path): """""" 彩色圖轉單色圖 :param input_img_path: 圖片路徑 :param output_img_path: 輸出圖片路徑 img = Image.open(input_img_path) # 轉化為黑白圖片 img = img.convert("L") img.save(output_img_path)
  • 然后將需要轉化的圖片放到一個文件夾中,我這里命名該文件夾為 imgs,然后指定一個輸出文件夾 output,如下:
dataset_dir = 'imgs' output_dir = 'output' # 獲得需要轉化的圖片路徑并生成目標路徑 image_filenames = [(os.path.join(dataset_ dir, file_ _dir),os.path.join(output_ _dir, file_ dir) ) for file_dir in os.listdir(dataset_ dir)] # 轉化所有圖片 for path in image_filenames: colorful_to_single(path[0], path[1])
  • 這里比較難理解的可能是 image_filenames,用到了列表推導式,即遍歷所有 dataset_dir 里的文件:
for file_dir in os.listdir(dataset_dir)
  • 并將其和指定的目錄以路徑的形式鏈接起來:
os.path.join(output_dir, file_dir)
  • 最終生成一個數組,第一個元素是輸入路徑,第二個元素是輸出路徑:
image_filenames = [(os.path.join(dataset_dir, file_dir),os.path.join(output_dir, file_dir) ) for file_dir in os.listdir(dataset_dir)]

四、效果及用途

  • 黑白效果如下所示:

  • 用途當然很多,比如:
    • 在深度學習分類圖像的時候,如果并不需要考慮顏色的維度,可以先將圖片轉化為黑白圖,簡化運算復雜度;
    • 黑白圖片有的時候比彩色圖片更具備沖擊力,能夠更加突出主題;
    • 黑白圖片有些時候也有美顏的作用,因為此時注意力的重點在于臉型,如果那個人的臉型特別好看,但是膚色比較差,這時候黑白照片就很有效果。

總結

以上是生活随笔為你收集整理的Python之将彩色图片批量转化为黑白图片的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。