您的位置: 旅游網 > 影視 >> 電視資訊

    對視頻進行圖片處呢

    發布時間:2021-10-28 05:24:50

    圖像處理

    在我的程序中圖像處理函數是作為 DirectShow 封裝類一部分的,我認為這樣便于移動和使用。沒有連著上面的 DirectShow 類而另外寫標題是因為我覺得有必要把它提到重要位置。在程序完善階段您的工作基本就在這里了,除了花心思構造D3D環境外幾乎所有效果都要在這里實現,水平高下也體現于此。

    在上可以找到很多圖像特效的代碼和解說,我結合編程過程再說說。

    1. 訪問緩沖區的麻煩。

    這是最麻煩的,二維圖像在這里以一個連續的一維緩沖區呈現,您要靠一個指針去訪問它,怎么辦呢?先弄懂 Pitch,例如 32bit ARGB 圖像,每個象素就占用 4 Byte 內存空間(1 Byte = 8 bit),對于寬度為 20 像素的圖像,它的 Pitch 就是 80 Byte,即每一行占用的內存。按 x 、y 坐標就有如下公式(按 Byte 計算):

    B:y * Pitch + x * 4

    G:y * Pitch + x * 4 + 1

    R:y * Pitch + x * 4 + 2

    A:y * Pitch + x * 4 + 3

    可以看出在內存中是按 BGRA 存儲的,我不明白為什么這樣,可能可以從計算機的內存存儲方式找到答案。上述公式計算多,效率較低,在實際使用中應適時作有益的改變。

    2. 浮雕。

    到目前為止我在上找到的幾篇文章都說把一點的值減去其右下角點的值再加上128就行了。為什么要減去右下角的點呢?為什么要加上128呢?原來浮雕是要把圖像的變化部分突出顯示出來,而把相同部分淡化,所以用一點減去其鄰域任意點都可以達到這個目的,倒也不一定是右下角的點,包圍著它的八個點都可以,甚至可以選擇減去更遠的點,只要規則明確、效果好就行。在相減后點的 RGB 值都減小了,大多接近黑色,黑乎乎一片的看不出什么來,一點也不像浮雕,所以要給它們都增加一個相同的亮度,通常加上128,其它的值,例如64、100,當然也行,一切都以實際效果為準。說到效果,上面所說的RGB相減會造成浮雕有一些色點,解決方法是計算兩點的亮度之差,RGB都賦值為亮度差,畫面就沒色點了,因為已經變成灰度圖了。亮度公式是 Brightness = 0.3 * R + 0.6 * G + 0.1 * B,其中G 的比重最大,可以近似的用 G 作為亮度,在RGB各自的分量圖中也可以明顯看出 G 分量的圖最亮,簡單的把 G 的值賦給 R 和 B 就得到灰度圖了,這可以減少計算,提高速度。后來我還看到這樣的話句,\"用3 * 3 的小塊做的浮雕效果更好\",不過我不知道怎么用,可能這樣就可以實現 PhotoShop 那樣更好的浮雕效果。

    原理是這樣了,到了編程卻是另外一回事:能夠把規則、數學公式轉換為程序也是能力的一種體現。如果要減去右下角的點,那么最右一列和最后一行是要特殊處理的,否則肯定會發生內存訪問錯誤,想一想就知道為什么;如果要減去左邊的點,第一列也要特殊處理,請問第一列的點到哪里找它左邊的點呢?不要小視此問題,它會令你訪問內存時遇到一些問題。

    那些被認為是標普指數表現最差的相關因子 3. 鉛筆畫

    鉛筆畫原理和浮雕差不多,也是亮度相減,認為變化大的是邊緣,然后設置一個閥值,例如差值大于8,則把該點設為黑色(0,0,0),要不設為白色(255,255,255)。閥值、色彩都可任意設置,沒人要您拘束就不要忸忸怩怩的不敢改動。

    按照此方法得到的效果實在不怎么樣,可惜我不是研究圖像的料,對數據的處理能力很差,同樣一幅在專家手中可以玩出很多花樣的圖片,淪落到我手上也只能飲恨屈膝投降無奈了。這是我看了一些圖像處理方面資料和書籍所發的呆嘆,圖像處理實在太精深了,既要數學、物理知識雄厚,又要腦子靈活能東移西就把各種知識綜合運用,不然就只好望洋興嘆。

    4. 加亮、對比度等

    首先悲痛的說明,我曾努力的要實現色度、飽和度的調整,知道是要把 RGB 轉換成 HLS 之類的顏色空間才能實現,也找到了一些它們之間轉換的說明和轉換函數,可惜看不明白,或者說那些材料根本不打算讓我明白!這不單是氣話,而且事實,我真的十分氣憤:怎么能夠在前面鋪了一大堆\"效果圖\"說了一大堆廢話然后給個只有幾行無大用的注釋的代碼就可以呢?!盡管如此憤概,我還是乖乖的抄了程序,希冀能發揮作用,結果卻是失望:不僅效率低下,而且在調整了飽和度的同時使圖像出現不協調的彩色方塊。由于不知道原理,無法改動,于是我放棄了它。

    調整亮度很簡單,例如要加亮 10,把 RGB 都加上 10 就可以了,減亮就減10。

    對比度調整也不難,書上說是要令亮點更亮、暗點更暗,好像是要找出亮點來增亮、找出暗點加暗,其實不然,把所有點都乘以一個數,把亮暗點的差距拉大或減小就能調整對比度了。把圖像原來的對比度定為 1,要增大對比度就調整為 1.3 、2 等大于1 的數,把每個點的 RGB 都乘以它,就行了,要降低就把數值設為 0 至 1 的數。只要注意保持 RGB 的值在 0 ~ 255 中即可。

    上海治療婦科醫院
    昆明治療早泄哪家好
    小孩子厭食不吃飯怎么辦
    猜你會喜歡的
    猜你會喜歡的
    主站蜘蛛池模板: 欧美激情综合色综合啪啪五月| 女仆的味道hd中字在线观看| 波多野结衣在线女教师| 高嫁肉柳风车动漫| 久热中文字幕在线精品免费 | 成人做受120视频试看| 日韩大片在线永久免费观看网站| 杨玉环三级dvd| 日本精品一卡二卡≡卡四卡| 日本午夜小视频| 日本乱理伦电影在线| 最新国产精品拍自在线播放| 日韩黄a级成人毛片| 最近2019中文字幕mv免费看| 最新国产精品亚洲| 日韩第一页在线| 日本不卡中文字幕| 实况360监控拍小两口| 好硬啊进得太深了h动态图120秒| 差差漫画在线登录入口弹窗页面| 手机在线免费视频| 城中村找个白皙丰满妇女在线播放| 在线观看精品国产福利片尤物| 国产香蕉在线观看| 国产精品亚洲欧美大片在线看 | 国产寡妇偷人在线观看视频| 国产成人精品久久亚洲高清不卡 | 大西瓜pron| 成人午夜私人影院入口| 成人免费在线播放| 婷婷人人爽人人爽人人片| 女性高爱潮视频| 国产精品无码一区二区三级| 亚洲毛片基地日韩毛片基地| 美女教师一级毛片| 国产在线观看精品一区二区三区91| 4p高h肉辣古代| 天天操天天干天搞天天射| 中文字幕成人网| 日韩大片在线永久免费观看网站 | 日本视频一区在线观看免费|