最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

OpenCV實(shí)現(xiàn)更改圖片顏色功能

 更新時(shí)間:2022年05月14日 09:50:41   作者:拽拽就是我  
這篇文章主要為大家詳細(xì)介紹了如何利用OpenCV實(shí)現(xiàn)更改圖片顏色的功能,文中代碼介紹詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

原圖效果:

更改顏色后效果:

直接上源碼:

#include <opencv2/opencv.hpp>
#include <iostream>
#include <vector>
#include <cstdio>
#include <cstring>

using namespace cv;
using namespace std;

int main(int argc, char const* argv[])
{
    Mat srcImg = imread("E:/img/kai.png", IMREAD_UNCHANGED); //-1不做任何改變
    Mat srcImg1 = imread("E:/img/kai.png", 0);   //0灰度
    Mat srcImg2 = imread("E:/img/kai.png", 1);  //1是color

    cout << srcImg.channels() << endl;
    cout << srcImg1.channels() << endl;
    cout << srcImg2.channels() << endl;
    
    imshow("-1", srcImg);
    imshow("0", srcImg1);
    imshow("1", srcImg2);

    //顏色有空間 RGB (1) RGBA(-1) 透明度  灰色空間(0)    
    //1、存儲(chǔ)階段的顏色值
    vector<Vec3d> colors;
    unsigned long index = 0;
    for (int i = 0; i < 6; ++i) {
        for (int j = 0; j < 6; ++j) {
            for (int k = 0; k < 6; ++k) {
                colors.push_back(Vec3d());
                colors[index][0] = i / 5.0 * 255;
                colors[index][1] = j / 5.0 * 255;
                colors[index][2] = k / 5.0 * 255;
                index++;
            }
        }
    }
    //2、更對(duì)對(duì)應(yīng)的顏色值
    index = 0;
    Mat temp = srcImg.clone();
    while (index < colors.size()) {
        for (int r = 0; r < srcImg.rows; ++r) {
            for (int c = 0; c < srcImg.cols; ++c) {
                //獲取像素點(diǎn)的顏色
                //c4b &pixel = srcImg.at<Vec4b>(r, c);  //4b和4d有區(qū)別的,b是uchar, d是double
                Vec4b &pixel_temp = temp.at<Vec4b>(r, c);
                //如果當(dāng)前點(diǎn)的透明度為0
                if (pixel_temp[3] == 0) {
                    continue;
                } else {
                    for (int i = 0; i < 3; ++i) {
                        pixel_temp[i] = colors[index][i];
                    }
                }
            }     
        }
        //3、保存需要的圖片
        char outImagePath[64] = {};
        sprintf_s(outImagePath, "E:/img/outImagePath/out_img_%.0f_%.0f_%.0f.png", colors[index][0], colors[index][1], colors[index][2]);
        imwrite(outImagePath, temp);
        index++;
    }   
    //waitKey(0);
    return 0;
}

到此這篇關(guān)于OpenCV實(shí)現(xiàn)更改圖片顏色功能的文章就介紹到這了,更多相關(guān)OpenCV更改圖片顏色內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 利用C++單例模式實(shí)現(xiàn)高性能配置管理器

    利用C++單例模式實(shí)現(xiàn)高性能配置管理器

    這篇文章主要為大家詳細(xì)介紹了如何利用C++單例模式實(shí)現(xiàn)高性能配置管理器,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2023-04-04
  • 剖析C語(yǔ)言關(guān)鍵字之void,const,return

    剖析C語(yǔ)言關(guān)鍵字之void,const,return

    這篇文章主要為大家介紹了C語(yǔ)言關(guān)鍵字之void,const,return,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-01-01
  • C/C++表格組件Qt?TableWidget應(yīng)用詳解

    C/C++表格組件Qt?TableWidget應(yīng)用詳解

    本文詳細(xì)講解了C/C++中使用列表框組件Qt?TableWidget的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • C++高性能服務(wù)器框架之協(xié)程調(diào)度模塊

    C++高性能服務(wù)器框架之協(xié)程調(diào)度模塊

    這篇文章主要介紹了C++高性能服務(wù)器框架中的協(xié)程調(diào)度模塊,文中通過(guò)代碼示例介紹的非常詳細(xì),對(duì)我們的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-06-06
  • C++實(shí)現(xiàn)堆排序?qū)嵗榻B

    C++實(shí)現(xiàn)堆排序?qū)嵗榻B

    大家好,本篇文章主要講的是C++實(shí)現(xiàn)堆排序?qū)嵗榻B,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • C++模板元編程實(shí)現(xiàn)選擇排序

    C++模板元編程實(shí)現(xiàn)選擇排序

    這篇文章主要介紹了C++模板元編程實(shí)現(xiàn)選擇排序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • c++ 標(biāo)準(zhǔn)庫(kù)多線程問(wèn)題小結(jié)

    c++ 標(biāo)準(zhǔn)庫(kù)多線程問(wèn)題小結(jié)

    C++11 引入了<thread>庫(kù),使得多線程編程更加方便,以下是一些基本概念和示例,幫助你理解如何在 C++ 中進(jìn)行多線程編程,這篇文章主要介紹了c++ 標(biāo)準(zhǔn)庫(kù)多線程,需要的朋友可以參考下
    2025-03-03
  • 詳解利用C語(yǔ)言如何實(shí)現(xiàn)簡(jiǎn)單的內(nèi)存池

    詳解利用C語(yǔ)言如何實(shí)現(xiàn)簡(jiǎn)單的內(nèi)存池

    這篇文章主要給大家介紹了關(guān)于C語(yǔ)言如何實(shí)現(xiàn)簡(jiǎn)單的內(nèi)存池的相關(guān)資料,設(shè)計(jì)內(nèi)存池的目標(biāo)是為了保證服務(wù)器長(zhǎng)時(shí)間高效的運(yùn)行,通過(guò)對(duì)申請(qǐng)空間小而申請(qǐng)頻繁的對(duì)象進(jìn)行有效管理,減少內(nèi)存碎片的產(chǎn)生,合理分配管理用戶內(nèi)存,需要的朋友可以參考下
    2021-08-08
  • c語(yǔ)言中&的用法示例代碼

    c語(yǔ)言中&的用法示例代碼

    這篇文章主要給大家介紹了關(guān)于c語(yǔ)言中&的用法的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • C語(yǔ)言題解Leetcode56合并區(qū)間實(shí)例

    C語(yǔ)言題解Leetcode56合并區(qū)間實(shí)例

    這篇文章主要為大家介紹了C語(yǔ)言題解Leetcode56合并區(qū)間實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01

最新評(píng)論

班戈县| 灵丘县| 广汉市| 根河市| 固镇县| 海阳市| 晋江市| 祁门县| 缙云县| 兴山县| 额济纳旗| 浠水县| 广州市| 屏南县| 万年县| 揭阳市| 樟树市| 商南县| 雷波县| 大港区| 英山县| 若羌县| 石门县| 正宁县| 亳州市| 宜昌市| 青铜峡市| 鹤壁市| 肃宁县| 武汉市| 田林县| 庄浪县| 花莲县| 高邑县| 塔河县| 巨野县| 西盟| 连城县| 韶山市| 淮滨县| 万州区|