pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

利用HTML5 Canvas做在線圖像處理

HTML 5中的 canvas 元素是相當強大的,利用他的 getImageData 方法可以對載入的圖像直接進行位圖操作。但是直接對位圖進行操作比較麻煩,如果利用卷積矩陣這個工具的話,可以通過幾個簡單的參數實現復雜的效果。

所謂的矩陣的卷積,就是如下圖顯示的那樣,當計算紅色框中的數值的時候,分別先提取周圍綠框中8個數字,然后與施加的那個矩陣中對應位置相乘,然后把各個乘積加在一起,就得到了最終的值了。

convolution calculate 利用HTML5 Canvas做在線圖像處理

比如上圖中的42是這么來的:

  (40*0)+(42*1)+(46*0) 
+ (46*0)+(50*0)+(55*0) 
+ (52*0)+(56*0)+(58*0) 
= 42

這就是卷積了。然后,所謂的對圖像的卷積操作,就是指對圖像上的每一點的像素值,用這個矩陣進行運算,得到一個新的值。

比如下面這張圖

image 利用HTML5 Canvas做在線圖像處理

利用下面這個矩陣 
-6 -3 0 
-3 -1 3 
0 3 6 
就立刻能夠得到浮雕效果。

image emboss 利用HTML5 Canvas做在線圖像處理

然后為了使用更方便,通常還會給最終值除以一個系數以及加上一個偏移。 
比如下面這個矩陣。 
0 0 0 
0 1 0 
0 0 0 
這個矩陣(實際上這個矩陣本身不對圖像進行任何操作),然后設置系數為-1,偏移為255的話,就能實現反色效果了,真是相當的神奇。

image inverse 利用HTML5 Canvas做在線圖像處理

為了簡化操作,我寫了個簡單的函數來對圖像數據進行操作。 
函數第一個參數是 canvas上的 imageData 對象 
第二個參數是傳入矩陣所對應的數組,如果是下面這樣的矩陣 
a b c 
d e f 
g h i 
則傳入第二個的參數應為 [a,b,c,d,e,f,g,h,i] 
第三個參數是除數因子。 
第四個參數就是偏移量。

// 計算卷積矩陣的函數
function ConvolutionMatrix(input, matrix, divisor, offset){
    // 創建一個輸出的 imageData 對象
    var output = document.createElement("canvas")
                         .getContext('2d').createImageData(input);
    var w = input.width, h = input.height;
    var iD = input.data, oD = output.data;
    var m = matrix;
    // 對除了邊緣的點之外的內部點的 RGB 進行操作,透明度在最后都設為 255
    for (var y = 1; y < h-1; y += 1) {
        for (var x = 1; x < w-1; x += 1) {
            for (var c = 0; c < 3; c += 1) {
                var i = (y*w + x)*4 + c;
                oD[i] = offset
                    +(m[0]*iD[i-w*4-4] + m[1]*iD[i-w*4] + m[2]*iD[i-w*4+4]
                    + m[3]*iD[i-4]     + m[4]*iD[i]     + m[5]*iD[i+4]
                    + m[6]*iD[i+w*4-4] + m[7]*iD[i+w*4] + m[8]*iD[i+w*4+4])
                    / divisor;
            oD[(y*w + x)*4 + 3] = 255; // 設置透明度
    return output;

我這里只寫了個3階的卷積矩陣。如果覺得不夠high還可以自己實現一個5階的。

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章主要介紹了有關HTML5頁面在iPhoneX適配問題,需要的朋友可以參考下
本篇文章主要介紹了html5中canvas圖表實現柱狀圖的示例,本文使用canvas來實現一個圖表,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
Adobe公司出品的多媒體處理軟件產品線較多,涵蓋了音視頻編輯、圖像處理、平面設計、影視后期等領域。這篇文章主要介紹了Adobe Html5 Extension開發初體驗圖文教程,非常不錯,需要的朋
這篇文章主要介紹了基于HTML5的WebGL經典3D虛擬機房漫游動畫,需要的朋友可以參考下
這篇文章主要介紹了手機端用rem+scss做適配的詳解,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
本篇文章主要介紹了canvas 實現 github404動態效果的示例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
主站蜘蛛池模板: 新疆散热器,新疆暖气片,新疆电锅炉,光耀暖通公司 | 高考志愿规划师_高考规划师_高考培训师_高报师_升学规划师_高考志愿规划师培训认证机构「向阳生涯」 | 硬齿面减速机_厂家-山东安吉富传动设备股份有限公司 | 南京和瑞包装有限公司| 寮步纸箱厂_东莞纸箱厂 _东莞纸箱加工厂-东莞市寮步恒辉纸制品厂 | HV全空气系统_杭州暖通公司—杭州斯培尔冷暖设备有限公司 | 蓝莓施肥机,智能施肥机,自动施肥机,水肥一体化项目,水肥一体机厂家,小型施肥机,圣大节水,滴灌施工方案,山东圣大节水科技有限公司官网17864474793 | 北京中创汇安科贸有限公司 | 齿辊分级破碎机,高低压压球机,立式双动力磨粉机-郑州长城冶金设备有限公司 | 丝杆升降机-不锈钢丝杆升降机-非标定制丝杆升降机厂家-山东鑫光减速机有限公司 | 啤酒设备-小型啤酒设备-啤酒厂设备-济南中酿机械设备有限公司 | 双吸泵,双吸泵厂家,OS双吸泵-山东博二泵业有限公司 | 据信,上课带着跳 D 体验-别样的课堂刺激感受引发网友热议 | 附着力促进剂-尼龙处理剂-PP处理剂-金属附着力处理剂-东莞市炅盛塑胶科技有限公司 | 北京征地律师,征地拆迁律师,专业拆迁律师,北京拆迁律师,征地纠纷律师,征地诉讼律师,征地拆迁补偿,拆迁律师 - 北京凯诺律师事务所 | 北京遮阳网-防尘盖土网-盖土草坪-迷彩网-防尘网生产厂家-京兴科技 | HYDAC过滤器,HYDAC滤芯,现货ATOS油泵,ATOS比例阀-东莞市广联自动化科技有限公司 | 郑州墨香品牌设计公司|品牌全案VI设计公司 | 穿线管|波纹穿线管|包塑金属软管|蛇皮管?闵彬专注弱电工程? | 台湾Apex减速机_APEX行星减速机_台湾精锐减速机厂家代理【现货】-杭州摩森机电 | 两头忙,井下装载机,伸缩臂装载机,30装载机/铲车,50装载机/铲车厂家_价格-莱州巨浪机械有限公司 | 定制/定做衬衫厂家/公司-衬衫订做/订制价格/费用-北京圣达信 | 卫浴散热器,卫浴暖气片,卫生间背篓暖气片,华圣格浴室暖气片 | 自动焊锡机_点胶机_螺丝机-锐驰机器人| 非标压力容器_碳钢储罐_不锈钢_搪玻璃反应釜厂家-山东首丰智能环保装备有限公司 | 工业电炉,台车式电炉_厂家-淄博申华工业电炉有限公司 | 德州网站制作 - 网站建设设计 - seo排名优化 -「两山建站」 | 无痕胶_可移胶_无痕双面胶带_可移无痕胶厂家-东莞凯峰 | 破碎机锤头_合金耐磨锤头_郑州宇耐机械工程技术有限公司 | 立式硫化罐-劳保用品硫化罐-厂家直销-山东鑫泰鑫硫化罐厂家 | 仿古瓦,仿古金属瓦,铝瓦,铜瓦,铝合金瓦-西安东申景观艺术工程有限公司 | 流量卡中心-流量卡套餐查询系统_移动电信联通流量卡套餐大全 | 上海办公室装修公司_办公室设计_直营办公装修-羚志悦装 | 南京试剂|化学试剂|分析试剂|实验试剂|cas号查询-专业60年试剂销售企业 | 甲级防雷检测仪-乙级防雷检测仪厂家-上海胜绪电气有限公司 | 粘度计,数显粘度计,指针旋转粘度计 | 上海办公室装修,办公楼装修设计,办公空间设计,企业展厅设计_写艺装饰公司 | 南京泽朗生物科技有限公司-液体饮料代加工_果汁饮料代加工_固体饮料代加工 | 变位机,焊接变位机,焊接变位器,小型变位机,小型焊接变位机-济南上弘机电设备有限公司 | 阻垢剂,反渗透阻垢剂,缓蚀阻垢剂-山东普尼奥水处理科技有限公司 真空粉体取样阀,电动楔式闸阀,电动针型阀-耐苛尔(上海)自动化仪表有限公司 | 山东石英砂过滤器,除氟过滤器「价格低」-淄博胜达水处理 |