国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

詳細(xì)教程:如何用python把佳能相機(jī)CR2格式的照片轉(zhuǎn)換為JPG格式?

這篇具有很好參考價值的文章主要介紹了詳細(xì)教程:如何用python把佳能相機(jī)CR2格式的照片轉(zhuǎn)換為JPG格式?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

創(chuàng)作背景

最近兒子用佳能單反相機(jī)拍了1000+張學(xué)校運動會的照片,默認(rèn)情況下佳能相機(jī)本身會保存有CR2原始格式和jpg格式的相片,老婆在通過筆記本電腦插入sd卡,進(jìn)行相片處理的時候,通過搜索框過濾出來所有jpg的圖像,不小心把所有jpg圖像都刪除了,兒子的班主任要求提交的是jpg圖像格式的照片。嗚呼!悲哉!幸好,CR2的照片在sd卡中還存在。

有沒有辦法批量地把CR2格式的照片轉(zhuǎn)換成jpg格式的照片呢?

首先,想到的是找一個圖像轉(zhuǎn)換軟件來完成批量轉(zhuǎn)換,百度了一下,居然發(fā)現(xiàn)了第一個就是:

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

下載安裝,使用一下,先是非會員最多只能處理3張圖片:

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

注冊會員,登陸成功,非VIP用戶轉(zhuǎn)換后的圖片會帶上水印,誒,看來不能白嫖呀。

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

估計別的圖片轉(zhuǎn)換的工具也是類似的情況,懶得找啦,決定嘗試自己用python開發(fā)一個轉(zhuǎn)換的小程序。

用Python實現(xiàn)RC2到j(luò)pg圖像的批量轉(zhuǎn)換

開發(fā)環(huán)境:windows10 + conda + python 3.11 + pycharm

通過conda創(chuàng)建虛擬環(huán)境

conda create -y -n img_converter python=3.11

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

conda activate img_converter

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

通過pip安裝第三方依賴

pip install rawpy opencv-python

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

編寫Python代碼

cr2_to_jpg.py

import rawpy
import cv2
import os

if __name__ == '__main__':
    cr2_image_dir = 'D:\\運動會'
    # opencv的imwrite方法不支持包含中文的路徑,如果路徑中包含中文,會導(dǎo)致保存失敗。
    # jpg_image_dir = 'D:\\運動會_jpg'
    jpg_image_dir = 'D:\\ydh_jpg'  # 修改為非中文路徑,避免保存失敗
    os.makedirs(jpg_image_dir, exist_ok=True)
    cr2_files = os.listdir(cr2_image_dir)
    cnt = 1
    print(f'total: {len(cr2_files)}')
    for cr2_file in cr2_files:
        if cr2_file.endswith('.CR2'):
            jpg_file_name = cr2_file.replace('.CR2', '') + '.jpg'
            jpg_file_path = os.path.join(jpg_image_dir, jpg_file_name)
            # 避免中途中斷重復(fù)處理
            if os.path.exists(jpg_file_path):
                continue
            cr2_img = rawpy.imread(os.path.join(cr2_image_dir, cr2_file))  # access to the RAW image
            rgb_img = cr2_img.postprocess()  # a numpy RGB array
            bgr_img = cv2.cvtColor(rgb_img, cv2.COLOR_RGB2BGR)   # the OpenCV image

            if cv2.imwrite(jpg_file_path, bgr_img, [cv2.IMWRITE_JPEG_QUALITY, 90]):
                print(f'{cnt}. save to {jpg_file_path}')
            else:
                print(f'fail to convert: {cr2_file}')

            cnt += 1

備注:

1)opencv的imwrite函數(shù)的路徑不能包含中文,否則會導(dǎo)致保存圖像失?。?/p>

2)可以通過“cv2.IMWRITE_JPEG_QUALITY”來控制保存的jpg圖像的質(zhì)量,取值為 0-100(默認(rèn)值 95),數(shù)值越大則圖片質(zhì)量越高;

3)rawpy中的“postprocess”方法提供了很多參數(shù),可以對raw圖像做很多后置處理(比如降噪,啟用白平衡,調(diào)整亮度,縮放等等)具體可以參考

RawPy class — rawpy 0.18.1 documentation

Params class — rawpy 0.18.1 documentation

在控制臺中通過虛擬環(huán)境運行代碼

把python代碼保存到“D:\image_converter\cr2_to_jpg.py”

通過“cd /d D:\image_converter” 進(jìn)入python腳本所在目錄

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

“python ./cr2_to_jpg.py”

cr2 轉(zhuǎn)pgm python,python,opencv,python,相機(jī),圖像處理

進(jìn)一步優(yōu)化

目前python程序是一個一個圖像順序進(jìn)行轉(zhuǎn)換,如果圖像圖像比較多的花,還是會比較耗時的,可以通過python的多進(jìn)程模塊(multipleprocess)來進(jìn)行并行處理。這個實現(xiàn)起來也不難,目前沒有這個需求,暫時就不實現(xiàn)了。

參考資料

rawpy · PyPI

????API Reference — rawpy 0.18.1 documentation

opencv-python · PyPI文章來源地址http://www.zghlxwxcb.cn/news/detail-774376.html

到了這里,關(guān)于詳細(xì)教程:如何用python把佳能相機(jī)CR2格式的照片轉(zhuǎn)換為JPG格式?的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 如何用個人電腦搭建一臺本地服務(wù)器,并部署項目到服務(wù)器詳細(xì)教程

    如何用個人電腦搭建一臺本地服務(wù)器,并部署項目到服務(wù)器詳細(xì)教程

    服務(wù)器是一種高性能計算機(jī),作為網(wǎng)絡(luò)的節(jié)點,它存儲、處理網(wǎng)絡(luò)上80%的數(shù)據(jù)、信息,因此也被稱為網(wǎng)絡(luò)的靈魂。與普通計算機(jī)相比,服務(wù)器具有高速CPU運算能力、長時間可靠運行、強(qiáng)大I/O外部數(shù)據(jù)吞吐能力以及更好的擴(kuò)展性。 服務(wù)器的主要用途廣泛,包括: 網(wǎng)站托管 :服

    2024年04月29日
    瀏覽(125)
  • Python教程:如何用Python編寫FOFA爬蟲獲取信息?

    部分?jǐn)?shù)據(jù)來源: ChatGPT ????????在網(wǎng)絡(luò)安全領(lǐng)域,信息收集是非常重要的一環(huán)。而網(wǎng)上許多公開的信息都是通過搜索引擎、在線查詢等方式獲取的。其中,F(xiàn)OFA 是一個非常優(yōu)秀的互聯(lián)網(wǎng)數(shù)據(jù)搜索引擎,可以通過搜索特定的來快速獲取相關(guān)的數(shù)據(jù)。 雖然 FOFA 有很多強(qiáng)大

    2024年02月08日
    瀏覽(53)
  • Unity中生成相機(jī)照片并保存到本地的詳細(xì)教程

    在游戲和應(yīng)用程序開發(fā)中,有時候需要通過代碼在Unity中使用相機(jī)捕捉當(dāng)前場景或特定視角的照片,并將其保存到本地。本教程將演示如何通過C#代碼實現(xiàn)這一功能。 此函數(shù)的目標(biāo)是使用給定的相機(jī)(photographyCamera)生成圖像,并將圖像保存到指定路徑。函數(shù)有五個參數(shù),分別

    2024年01月18日
    瀏覽(57)
  • 如何用Python進(jìn)行數(shù)據(jù)分析(保姆級教程)

    如何用Python進(jìn)行數(shù)據(jù)分析(保姆級教程)

    有小伙伴在學(xué)Python新手教程的時候說學(xué)Python比較復(fù)雜的地方就是資料太多了,比較復(fù)雜。 很多網(wǎng)上的資料都是從語法教起的,花了很多時間還是云里霧里,摸不清方向。今天就給大家來捋一捋思路!幫助大家提高學(xué)習(xí)效率! Python數(shù)據(jù)分析資料可以點擊下方鏈接或者掃描下方

    2024年01月21日
    瀏覽(31)
  • chatgpt賦能python:Python編程教程:如何用Python寫搶購程序

    隨著網(wǎng)購的流行和限量商品的推出,搶購已經(jīng)成為了一個非常熱門的話題。有些人甚至?xí)ㄟ^軟件或程序來提高他們成功搶到商品的機(jī)會。在本篇文章中,我們將介紹如何用Python編寫一個簡單易用的搶購程序,幫助您在搶購商品時獲得競爭優(yōu)勢。 在編寫Python搶購程序之前,您

    2024年02月07日
    瀏覽(27)
  • 什么是AI-Chat?如何用AI幫你畫圖、寫文章、寫PPT?詳細(xì)教程來了

    什么是AI-Chat?如何用AI幫你畫圖、寫文章、寫PPT?詳細(xì)教程來了

    AI Chat作為一款功能性極強(qiáng)的AI應(yīng)用,它使用的模型和ChatGPT一樣,有GPT-3.5和4.0模型??梢哉f,他們除了長得不一樣,其他能力都一樣。 你可以讓他幫你解答與做任何事情,像寫文章、寫代碼、寫演講稿、圖片識別等這些都能輕松完成。 還能夠扮演各種角色,如“法律顧問”、

    2024年02月03日
    瀏覽(68)
  • 【Camera2 教程二】Camera2相機(jī)打開和關(guān)閉接口調(diào)用詳細(xì)說明

    上一章《Camera2教程一》里我們介紹了一些 Camera2 的基礎(chǔ)知識,但是并沒有涉及太多的 API,從本章開始我們會開發(fā)一個具有完整相機(jī)功能的應(yīng)用程序,并且將相機(jī)知識分成多個篇章進(jìn)行介紹,而本章所要介紹的就是相機(jī)的開啟流程。 閱讀本章之后,你將學(xué)會以下幾個知識點:

    2024年04月25日
    瀏覽(34)
  • 超詳細(xì)AI二維碼制作教程:手把手教你如何用Stable Diffusion 生成一個創(chuàng)意二維碼?

    超詳細(xì)AI二維碼制作教程:手把手教你如何用Stable Diffusion 生成一個創(chuàng)意二維碼?

    AI已來,未來已來! 來勢洶洶的人工智能,如同創(chuàng)世紀(jì)的洪水,正在全世界的范圍內(nèi)引發(fā)一場史無前例的科技革命。AI正在改變世界!而我們正是這場巨變的見證者。 今天我們要介紹的內(nèi)容就是:如何利用AI工具Stable Diffusion,生成你的專屬創(chuàng)意二維碼? (下文包含詳細(xì)圖文教

    2024年02月16日
    瀏覽(26)
  • 如何用conda安裝PyTorch(windows、GPU)最全安裝教程(cudatoolkit、python、PyTorch、Anaconda版本對應(yīng)問題)(完美解決安裝CPU而不是GPU的問題)

    如何用conda安裝PyTorch(windows、GPU)最全安裝教程(cudatoolkit、python、PyTorch、Anaconda版本對應(yīng)問題)(完美解決安裝CPU而不是GPU的問題)

    ? ? ? ? 安裝PyTorch的開發(fā)環(huán)境:Anaconda+CUDA+cuDNN+PyCharm Community 1.1 版本選擇 第一步就是最關(guān)鍵的版本對應(yīng)問題(這決定你能否成功安裝PyTorch,以及能否成功安裝GPU版本的關(guān)鍵問題),可以這么說,版本不能對應(yīng)好,后面有很大的問題,因此,我們要先確定版本的對應(yīng)關(guān)系。(

    2024年02月07日
    瀏覽(25)
  • 如何用Python對股票數(shù)據(jù)進(jìn)行LSTM神經(jīng)網(wǎng)絡(luò)和XGboost機(jī)器學(xué)習(xí)預(yù)測分析(附源碼和詳細(xì)步驟),學(xué)會的小伙伴們說不定就成為炒股專家一夜暴富了

    如何用Python對股票數(shù)據(jù)進(jìn)行LSTM神經(jīng)網(wǎng)絡(luò)和XGboost機(jī)器學(xué)習(xí)預(yù)測分析(附源碼和詳細(xì)步驟),學(xué)會的小伙伴們說不定就成為炒股專家一夜暴富了

    最近調(diào)研了一下我做的項目受歡迎程度,大數(shù)據(jù)分析方向竟然排第一,尤其是這兩年受疫情影響,大家都非常擔(dān)心自家公司裁員或倒閉,都想著有沒有其他副業(yè)搞搞或者炒炒股、投資點理財產(chǎn)品,未雨綢繆,所以不少小伙伴要求我這邊分享下關(guān)于股票預(yù)測分析的技巧。 基于股

    2024年02月02日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包