吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何實(shí)現(xiàn)PIL和OpenCV之間圖像數(shù)據(jù)的轉(zhuǎn)換呢?

jf_Ufm3lVrj ? 來(lái)源:凌順實(shí)驗(yàn)室 ? 2024-02-25 13:43 ? 次閱讀

本文介紹如何仔PIL和OpenCV之間圖像數(shù)據(jù)的轉(zhuǎn)換,因?yàn)橛袝r(shí)候在圖片處理速度上PIL會(huì)更勝一籌,現(xiàn)在這個(gè)轉(zhuǎn)換方法寫成一個(gè)函數(shù),以便它轉(zhuǎn)換具有灰度或 alpha 通道的圖像。

PIL圖像數(shù)據(jù)格式轉(zhuǎn)換成OpenCV圖像數(shù)據(jù)格式

1,使用cv2轉(zhuǎn)換色彩的方法

import numpy as np
import cv2

def pil2cv(PIL_image):
    ''' PIL型 -> OpenCV型 '''
    cv2_image = np.array(PIL_image, dtype=np.uint8)
    if cv2_image.ndim == 2:  # 黑白
        pass
    elif cv2_image.shape[2] == 3:  # 彩色的3通道
        new_image = cv2.cvtColor(cv2_image, cv2.COLOR_RGB2BGR)
    elif cv2_image.shape[2] == 4:  # 包含透明的4通道
        cv2_image = cv2.cvtColor(cv2_image, cv2.COLOR_RGBA2BGRA)
    return cv2_image

2,不 使用cv2轉(zhuǎn)換色彩的方法

import numpy as np

def pil2cv(PIL_image):
    ''' PIL型 -> OpenCV型 '''
    cv2_image = np.array(PIL_image, dtype=np.uint8)
    if cv2_image.ndim == 2:  # 黑白
        pass
    elif cv2_image.shape[2] == 3:  # 彩色的3通道
        cv2_image = cv2_image[:, :, ::-1]
    elif cv2_image.shape[2] == 4:  # 包含透明的4通道
        cv2_image = cv2_image[:, :, [2, 1, 0, 3]]

    return cv2_image

OpenCV圖像數(shù)據(jù)格式轉(zhuǎn)換成PIL圖像數(shù)據(jù)格式

1,使用cv2轉(zhuǎn)換色彩的方法

from PIL import Image
import cv2

def cv2pil(cv2_image):
    ''' OpenCV型 -> PIL型 '''
    pil_image = cv2_image.copy()
    if pil_image.ndim == 2:  # 黑白
        pass
    elif pil_image.shape[2] == 3:   # 彩色的3通道
        pil_image = cv2.cvtColor(pil_image, cv2.COLOR_BGR2RGB)
    elif pil_image.shape[2] == 4:  # 包含透明的4通道
        pil_image = cv2.cvtColor(pil_image, cv2.COLOR_BGRA2RGBA)

    pil_image = Image.fromarray(pil_image)
    return pil_image

2,不使用cv2轉(zhuǎn)換色彩的方法

from PIL import Image

def cv2pil(cv2_image):
    ''' OpenCV型 -> PIL型 '''
    pil_image = cv2_image.copy()
    if pil_image.ndim == 2:   # 黑白
        pass
    elif pil_image.shape[2] == 3:   # 彩色的3通道
        pil_image = pil_image[:, :, ::-1]
    elif pil_image.shape[2] == 4:  # 包含透明的4通道
        pil_image = pil_image[:, :, [2, 1, 0, 3]]
    pil_image = Image.fromarray(new_pil_imageimage)
    return pil_image




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 圖像數(shù)據(jù)
    +關(guān)注

    關(guān)注

    0

    文章

    52

    瀏覽量

    11313
  • OpenCV
    +關(guān)注

    關(guān)注

    31

    文章

    635

    瀏覽量

    41556
  • PIL
    PIL
    +關(guān)注

    關(guān)注

    0

    文章

    19

    瀏覽量

    8647

原文標(biāo)題:PIL圖像和OpenCV圖像數(shù)據(jù)格式互相轉(zhuǎn)換

文章出處:【微信號(hào):凌順實(shí)驗(yàn)室,微信公眾號(hào):凌順實(shí)驗(yàn)室】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Vivado設(shè)計(jì)流程分析 Vivado HLS實(shí)現(xiàn)OpenCV的開發(fā)流程

    作者:Harvest Guo來(lái)源:Xilinx DSP Specilist 本文通過(guò)對(duì)OpenCV圖像類型和函數(shù)處理方法的介紹,通過(guò)設(shè)計(jì)實(shí)例描述在vivadoHLS中調(diào)用OpenCV庫(kù)函數(shù)實(shí)
    發(fā)表于 04-23 11:32 ?5906次閱讀
    Vivado設(shè)計(jì)流程分析 Vivado HLS<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>OpenCV</b>的開發(fā)流程

    opencv跟labview圖像格式的轉(zhuǎn)換

    opencv跟labview圖像格式的轉(zhuǎn)換,有大神會(huì)嗎,教我?
    發(fā)表于 08-13 21:07

    Vivado HLS實(shí)現(xiàn)OpenCV圖像處理的設(shè)計(jì)流程與分析

    ::Mat《》類型的轉(zhuǎn)換。2、使用VivadoHLS實(shí)現(xiàn)OpenCV到RTL代碼轉(zhuǎn)換的流程2.1 OpenCV設(shè)計(jì)中的權(quán)衡
    發(fā)表于 07-08 08:30

    如何去實(shí)現(xiàn)一種基于opencv與flask的攝像頭圖像傳輸

    硬件:eaidk610(fedaro28)、普通帶usb接口攝像頭軟件環(huán)境: python3.9、opencv4.6、Flask2.2主要實(shí)現(xiàn)了從板子的連接的攝像頭收集圖像并在網(wǎng)頁(yè)中展示,板子上沒(méi)有
    發(fā)表于 10-18 14:25

    如何使用Python中的OpenCV模塊檢測(cè)顏色

    numpy然后,導(dǎo)入模塊。讀取圖像并使用 OpenCV 模塊中的 cvtColor() 函數(shù)將BGR圖像轉(zhuǎn)換為 HSV (色調(diào)、飽和度、值) 圖像
    發(fā)表于 02-09 16:31

    i.MX8m plus如何在ICC配置文件之間進(jìn)行轉(zhuǎn)換

    我知道 NXP OpenCV fork 集成了 eIQ,用于 i.MX8m plus 上的硬件加速神經(jīng)圖像處理。 但是,非機(jī)器學(xué)習(xí)圖像處理又如何,例如在 ICC 配置文件
    發(fā)表于 05-31 06:02

    使用opencv進(jìn)行圖像處理

    使用opencv進(jìn)行圖像處理_于仕琪,感興趣的可以看看。
    發(fā)表于 05-03 14:45 ?0次下載

    opencv中三種常見(jiàn)數(shù)據(jù)容器:Mat,cvMat和IplImage及它們編程顯示圖像的差異

    IplImage, CvMat, Mat 的關(guān)系opencv中常見(jiàn)的與圖像操作有關(guān)的數(shù)據(jù)容器有Mat,cvMat和IplImage,這三種類型都可以代表和顯示圖像,但是,Mat類型側(cè)重
    發(fā)表于 11-25 13:18 ?6591次閱讀

    關(guān)于MIL、SIL、PIL和HIL之間的聯(lián)系和異同分析

    SIL和PIL是等效性測(cè)試,測(cè)試的目的是為了驗(yàn)證自動(dòng)生成的代碼和模型具有相同的行為,既然如此,對(duì)于SIL和PIL的測(cè)試用例就沒(méi)有功能意義上的要求,只要要求代碼和模型輸入的測(cè)試數(shù)據(jù)相同即可,當(dāng)然希望
    的頭像 發(fā)表于 09-17 11:51 ?1.5w次閱讀
    關(guān)于MIL、SIL、<b class='flag-5'>PIL</b>和HIL<b class='flag-5'>之間</b>的聯(lián)系和異同分析

    OpenCV實(shí)現(xiàn)圖像形態(tài)學(xué)什么常見(jiàn)操作?

    圖像形態(tài)學(xué)是圖像處理的分支學(xué)科,在二值圖像處理中占有重要地位、OpenCV實(shí)現(xiàn)圖像形態(tài)學(xué)如下
    的頭像 發(fā)表于 05-27 14:11 ?1497次閱讀
    <b class='flag-5'>OpenCV</b>中<b class='flag-5'>實(shí)現(xiàn)</b>了<b class='flag-5'>圖像</b>形態(tài)學(xué)什么常見(jiàn)操作?

    PIL的使用以及劃分圖像的皮膚區(qū)域

    本項(xiàng)目將使用python3去識(shí)別圖片是否為色情圖片,會(huì)使用到PIL這個(gè)圖像處理庫(kù),并且編寫算法來(lái)劃分圖像的皮膚區(qū)域
    的頭像 發(fā)表于 07-15 10:03 ?1693次閱讀

    手把手教你使用LabVIEW OpenCV dnn實(shí)現(xiàn)圖像分類(含源碼)

    使用LabVIEW OpenCV dnn實(shí)現(xiàn)圖像分類
    的頭像 發(fā)表于 03-09 13:37 ?1411次閱讀

    PiL測(cè)試實(shí)戰(zhàn)(下)| PiL階段的閉環(huán)測(cè)試

    算法(ControllerModel)刷入目標(biāo)板,那如何帶著位于PC端的PlantModel一起進(jìn)行閉環(huán)測(cè)試?圖1PiL階段的閉環(huán)測(cè)試流程下面我會(huì)為以一個(gè)座艙溫度
    的頭像 發(fā)表于 12-15 10:31 ?929次閱讀
    <b class='flag-5'>PiL</b>測(cè)試實(shí)戰(zhàn)(下)| <b class='flag-5'>PiL</b>階段的閉環(huán)測(cè)試

    如何安裝Python圖像處理PIL庫(kù)

    安裝PIL庫(kù) 要使用PIL庫(kù),我們首先需要安裝它。有兩種方法可以安裝PIL庫(kù): 方法一:使用pip命令,在終端或命令行中輸入以下代碼: pip install Pillow 方法二:從官網(wǎng)下
    的頭像 發(fā)表于 09-12 17:15 ?2784次閱讀
    如何安裝Python<b class='flag-5'>圖像</b>處理<b class='flag-5'>PIL</b>庫(kù)

    OpenCV圖像識(shí)別C++代碼

    安裝OpenCV庫(kù) 首先,您需要在您的計(jì)算機(jī)上安裝OpenCV庫(kù)。您可以從OpenCV官網(wǎng)下載預(yù)編譯的庫(kù)或從源代碼編譯。安裝完成后,確保將OpenCV的頭文件和庫(kù)文件添加到您的項(xiàng)目中。
    的頭像 發(fā)表于 07-16 10:42 ?2434次閱讀
    百家乐注册| 百家乐扑克投注赢钱法| 乐博国际| 百家乐赌场现金网平台排名| 至尊百家乐官网娱乐平台| 大发888娱乐场游戏| 百家乐官网平注法到656| 百家乐官网庄的概率| 太阳城娱乐管理网| 波音网百家乐合作| 香港百家乐官网六合彩| 湛江市| 克拉克娱乐城| 大发888娱乐场登陆| 百家乐博娱乐平台赌百家乐| 百家乐视频双扣游戏| 百家乐官网澳门技巧| 百家乐官网娱乐网站| 百家乐那个平好| 网络百家乐棋牌| 一共33楼24楼风水怎么说| 百家乐官网娱乐代理| 百家乐官网赢率| 大发888全球顶级游戏平台| 回力百家乐的玩法技巧和规则 | 大发888下载安全的| 怎样打百家乐的玩法技巧和规则| 百家乐官网娱乐网代理佣金| 百家乐官网黑牌靴| 百家乐官网游戏机子| 金龙娱乐城| 皇冠最新投注网| 皇冠网址推介| 金彩百家乐的玩法技巧和规则| 如何胜百家乐官网的玩法技巧和规则| 大发888娱乐城.com| 大众百家乐的玩法技巧和规则| 百家乐官网群的微博| 百家乐官网的薇笑打法| 百家乐官网怎赌才赢钱| 百家乐官网单打|