<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        Photoshop圖像亮度/對比度調整

        來源:懂視網 責編:小采 時間:2020-11-27 14:49:48
        文檔

        Photoshop圖像亮度/對比度調整

        Photoshop圖像亮度/對比度調整:簡單介紹一下Photoshop圖像亮度/對比度調整的原理: 一、對比度算法公式。 Photoshop對于對比度增量,是按給定值的正負分別處理的。 如果用newRGB表示圖像像素新的R、G、B分量,RGB表示圖像像素R、G、B分量,Threshold為給定的閥值,Contrast為對
        推薦度:
        導讀Photoshop圖像亮度/對比度調整:簡單介紹一下Photoshop圖像亮度/對比度調整的原理: 一、對比度算法公式。 Photoshop對于對比度增量,是按給定值的正負分別處理的。 如果用newRGB表示圖像像素新的R、G、B分量,RGB表示圖像像素R、G、B分量,Threshold為給定的閥值,Contrast為對
        簡單介紹一下Photoshop圖像亮度/對比度調整的原理:

        一、對比度算法公式。

        Photoshop對于對比度增量,是按給定值的正負分別處理的。

        如果用newRGB表示圖像像素新的R、G、B分量,RGB表示圖像像素R、G、B分量,Threshold為給定的閥值,Contrast為對比度增量,當Contrast大于0時:

        1) newRGB = RGB + (RGB - Threshold) * (1 / (1 - Contrast / 255) - 1)

        其中,當Contrast等于255時(RGB - Threshold) * (1 / (1 - Contrast / 255) - 1)為無限(±),由于RGB最大最小值分別為255和0,因此,只能按Threshold來確定newRGB,即newRGB = RGB >= Threshold? 255 : 0,這實際就是設置圖像閥值,圖像由最多八種顏色組成,即紅、黃、綠、青、藍、紫及黑與白,在灰度圖上也只有最多8條線。

        當Contrast小于0時:

        2) newRGB = RGB + (RGB - Threshold) * Contrast / 255

        其中,當Contrast等于-255時,圖像RGB各分量都等于閥值,圖像呈全灰色,灰度圖上只有1條線,即閥值灰度。

        二、圖像亮度調整。本文采用的是最常用的非線性亮度調整(Phoposhop CS3以下版本也是這種亮度調整方式,CS3及以上版本也保留了該亮度調整方式的選項)。

        三、圖像亮度/對比度綜合調整算法。這個很簡單,當亮度、對比度同時調整時,如果對比度大于0,現調整亮度,再調整對比度;當對比度小于0時,則相反,先調整對比度,再調整亮度。

        下面是用BCB2007和GDI+位圖數據寫的Photoshop圖像亮度/對比度調整全部代碼,包括例子代碼:

        //---------------------------------------------------------------------------

        // 定義ARGB像素結構
        typedef union
        {
        ARGB Color;
        struct
        {
        BYTE Blue;
        BYTE Green;
        BYTE Red;
        BYTE Alpha;
        };
        }ARGBQuad, *PARGBQuad;
        //---------------------------------------------------------------------------

        //---------------------------------------------------------------------------

        FORCEINLINE
        INT CheckValue(INT value)
        {
        return value <= 0? 0 : value >= 255? 255 : value;
        }
        //---------------------------------------------------------------------------

        VOID BrightAndContrast(BitmapData *data, INT bright, INT contrast, BYTE threshold)
        {
        FLOAT cv = contrast <= -255? -1.0f : contrast / 255.0f;
        if (contrast > 0 && contrast < 255)
        cv = 1.0f / (1.0f - cv) - 1.0f;

        BYTE values[256];
        for (INT i = 0; i < 256; i ++)
        {
        INT v = contrast > 0? CheckValue(i + bright) : i;
        if (contrast >= 255)
        v = v >= threshold? 255 : 0;
        else
        v = CheckValue(v + (INT)((v - threshold) * cv + 0.5f));
        values[i] = contrast < 0? CheckValue(v + bright) : v;
        }

        PARGBQuad p = (PARGBQuad)data->Scan0;
        INT offset = data->Stride - data->Width * sizeof(ARGBQuad);

        for (UINT y = 0; y < data->Height; y ++, (BYTE*)p += offset)
        {
        for (UINT x = 0; x < data->Width; x ++, p ++)
        {
        p->Blue = values[p->Blue];
        p->Green = values[p->Green];
        p->Red = values[p->Red];
        }
        }
        }
        //---------------------------------------------------------------------------

        // 鎖定GDI+位位圖掃描線到data
        FORCEINLINE
        VOID LockBitmap(Gdiplus::Bitmap *bmp, BitmapData *data)
        {
        Gdiplus::Rect r(0, 0, bmp->GetWidth(), bmp->GetHeight());
        bmp->LockBits(&r, ImageLockModeRead | ImageLockModeWrite,
        PixelFormat32bppARGB, data);
        }
        //---------------------------------------------------------------------------

        // GDI+位圖掃描線解鎖
        FORCEINLINE
        VOID UnlockBitmap(Gdiplus::Bitmap *bmp, BitmapData *data)
        {
        bmp->UnlockBits(data);
        }
        //---------------------------------------------------------------------------

        void __fastcall TForm1::Button3Click(TObject *Sender)
        {
        Gdiplus::Bitmap *bmp = new Gdiplus::Bitmap(L"d:\\source.jpg");
        Gdiplus::Graphics *g = new Gdiplus::Graphics(Canvas->Handle);
        g->DrawImage(bmp, 0, 0);

        BitmapData data;
        LockBitmap(bmp, &data);
        BrightAndContrast(&data, 0, 100, 121);
        UnlockBitmap(bmp, &data);
        g->DrawImage(bmp, data.Width, 0);

        delete g;
        delete bmp;
        }
        //---------------------------------------------------------------------------

        在亮度/對比度調整函數BrightAndContrast中,首先按前面介紹的原理制造了一個256個元素大小的查找表,然后對圖像數據逐像素按R、G、B分量值在查找表中取得調整后的數據,因此處理速度相當快。

        Photoshop圖像亮度/對比度調整

        更多Photoshop圖像亮度/對比度調整 相關文章請關注PHP中文網!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        Photoshop圖像亮度/對比度調整

        Photoshop圖像亮度/對比度調整:簡單介紹一下Photoshop圖像亮度/對比度調整的原理: 一、對比度算法公式。 Photoshop對于對比度增量,是按給定值的正負分別處理的。 如果用newRGB表示圖像像素新的R、G、B分量,RGB表示圖像像素R、G、B分量,Threshold為給定的閥值,Contrast為對
        推薦度:
        標簽: 圖片 調整 Photoshop
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 在线亚洲精品福利网址导航| 日韩视频在线免费观看| 亚洲AV日韩精品久久久久久| 福利免费在线观看| 亚洲综合日韩久久成人AV| 男人扒开添女人下部免费视频| 国产gav成人免费播放视频| 免费高清A级毛片在线播放| 亚洲精品无码久久久久AV麻豆| 一个人看的www视频免费在线观看 一个人看的免费观看日本视频www | 久久国产美女免费观看精品 | 日韩亚洲AV无码一区二区不卡| 日韩视频免费在线观看| 18亚洲男同志videos网站| 最近免费中文在线视频| 亚洲av无码一区二区三区天堂古代 | 亚洲最大AV网站在线观看| 中国在线观看免费的www| 久久久久亚洲AV无码网站| 亚洲天堂免费在线| 特黄特色大片免费| 亚洲狠狠婷婷综合久久久久| 久久综合给合久久国产免费| 亚洲一级特黄特黄的大片| 免费日本黄色网址| 免费看一区二区三区四区| 亚洲精品国产成人| 免费国产一级特黄久久| 免费h视频在线观看| 亚洲成a人片毛片在线| 五月婷婷亚洲综合| 无码人妻精品中文字幕免费| 亚洲无人区码一二三码区别图片| 亚洲人妻av伦理| 国产精品免费观看| 一级毛片免费不卡直观看| 亚洲狠狠ady亚洲精品大秀| 免费大片黄手机在线观看| 99re免费视频| 日韩亚洲人成在线综合| 亚洲自偷精品视频自拍|