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

    對視頻進行圖片處呢

    發布時間: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 中即可。

    上海治療婦科醫院
    昆明治療早泄哪家好
    小孩子厭食不吃飯怎么辦
    猜你會喜歡的
    猜你會喜歡的
    主站蜘蛛池模板: 99久久精品费精品国产一区二区| 亚欧免费视频一区二区三区| 蜜臀精品无码av在线播放| 处破之轻点好疼十八分钟| 久久国产精品萌白酱免费| 2022韩国最新三级伦理在线观看| 无码内射中文字幕岛国片| 亚洲日韩小电影在线观看| 纯爱无遮挡h肉动漫在线播放| 国产福利一区二区精品秒拍| 一本色道久久88加勒比—综合| 日韩精品亚洲专区在线影视| 亚洲综合精品第一页| 美女黄网站人色视频免费国产| 国产真人无遮挡作爱免费视频| a级毛片高清免费视频| 日日AV色欲香天天综合网| 做受视频60秒试看 | 1000部拍拍拍18勿入免费视频软件 | 午夜男女爽爽影院网站| 麻花传剧mv在线看星空| 国产精品综合网| igao视频网站| 成年免费A级毛片免费看无码| 亚洲精品第五页中文字幕| 日本3p视频在线看高清| 成人国产精品2021| 久久综合狠狠综合久久97色| 毛片a级毛片免费观看免下载| 午夜dj在线观看免费高清在线| 韩国电影中文字幕在线观看| 宅男66lu国产在线观看| 久久精品九九亚洲精品| 男女免费观看在线爽爽爽视频 | 国产欧美日韩精品专区| 95老司机免费福利| 小坏蛋轻点阿受不了漫画| 久久久久99人妻一区二区三区| 波多野结衣bd| 军人野外吮她的花蒂无码视频 | 立即播放免费毛片一级|