国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

VB圖像處理之鉛筆畫算法和木雕算法

2019-11-18 17:41:32
字體:
來源:轉載
供稿:網友
在這一篇中我將和大家講述鉛筆畫算法和木雕算法和它們的實現。為什么我要把這兩個算法放在一起說呢,因為這兩個算法是非常相似的。首先要說一下人的眼睛對于圖像的觀察,人的眼睛對于灰度(亮度)的敏感要遠遠大于對色彩的敏感,而人的眼睛對于暖色調和冷色調的敏感有要遠大于對一般色彩的敏感度。

  經過大量的測試,人們得到了一個經驗公式,來說明人的眼睛是如何識別亮度的:

Gray=Red*0.3 Green*0.6 Blue*0.1

  而右因為人的眼睛對于綠色的敏感度最大,就有了一個更加近似的公式:

Gray=Green

  請大家再回想一下以前在用鉛筆畫眼睛看到的景色的時候,是如何做的呢?輪廓,對了,輪廓是什么呢?其實說白了就是灰度的一個跳變。因此我們只要設定一個閥值,把電腦上的圖片中的像素的色彩轉化為灰度,再把相鄰的兩個像素的灰度去比較,當灰度變化超過一定的量的時候,我們就判斷它是輪廓。用鉛筆把它描繪出來。

  有了這個思路,我們就很容易把這個算法寫出來了。

->PublicSubPencil(OptionalByValSensitivityAsLong=25)
 DimIAsLong
 DimLAsLong
 DimMAsLong
 DimNAsLong
 DimColAsLong
 DimColNextAsLong
 'OnErrorGoToErrLine
 IfNotCanPutThenExitSub
 Done=False
 TimeFilter=timeGetTime
 ForI=0ToOutPutWid-1
  M=I 1
  ForL=0ToOutPutHei-1
   N=L 1
   Col=ColOut(0,I,L)*3 ColOut(1,I,L)*6 ColOut(2,I,L)
   Col=Col/10'當前點的灰度哦。
   ColNext=ColOut(0,M,N)*3 ColOut(1,M,N)*6 ColOut(2,M,N)
   ColNext=-ColNext/10'下一點的灰度哦。
   IfCol ColNext>SensitivityThen'判斷灰度變化是否超過設定的閥值
    ColOut(0,I,L)=0'RGB(0,0,0)表示黑色
    ColOut(1,I,L)=0
    ColOut(2,I,L)=0
   Else
    ColOut(0,I,L)=255'RGB(255,255,255)表示白色
    ColOut(1,I,L)=255
    ColOut(2,I,L)=255
   EndIf
  Next
 Next
 Done=True
 TimeFilter=timeGetTime-TimeFilter
 ExitSub
ErrLine:
 MsgBoxErr.Descr->

  這兩篇講的都是一些很簡單的圖像處理,下一篇講給大家講“灰度直方圖”的概念,大家或許用過PhotoShop中的AutoLevel的功能吧,它可以把一張色彩很“別扭”的圖像轉換為很“舒服”的效果,那么就需要用到“灰度直方圖”這個工具了,希望大家不要錯過。->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 华亭县| 宁河县| 曲周县| 南郑县| 沂南县| 白玉县| 博兴县| 徐州市| 旌德县| 焦作市| 海晏县| 平谷区| 黑龙江省| 鹰潭市| 自贡市| 安岳县| 百色市| 崇仁县| 新源县| 张家界市| 额敏县| 建瓯市| 桂平市| 海兴县| 安多县| 淄博市| 三明市| 永德县| 景宁| 土默特右旗| 澄迈县| 筠连县| 九寨沟县| 利辛县| 沈丘县| 扬中市| 牙克石市| 云安县| 白河县| 大同县| 东丽区|