999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于WebGL的在線圖像瀏覽器的設計與實現

2019-03-26 08:10:52
福建質量管理 2019年15期
關鍵詞:功能

(華北電力大學控制與計算機工程學院 北京 102206)

一、引言

伴隨網絡程序的應用頻率加強,之前慣用的2D圖像已經不能達到應用的要求,隨之產生了3D圖像交互式的網頁技術。然而網頁互動式3D顯示技術是有缺陷的,如Java Applet需求空間大,功能差,不能實現圖像硬件加速效果;插件Flash及微軟銀光的效果很好、很實用,但有一個需要插件實現,很難兼容平臺使用的問題。

WebGL技術的應用及時地幫助處理這個難題,圖紙功能標準添加了JS腳本將附帶OpenGL ES2.0,使得JS腳本和OpenGL ES完美組合起來,從而實現一個硬件加速三維 html5的畫布渲染功能。在線圖像瀏覽器的設計與實現,主要是利用WebGL及其代碼實現一些類似于PS中的濾鏡的功能,應用于圖片的處理[1]。以前利用VC對圖片實現一些基本的處理:平移、縮放、百葉窗顯示等。這里,我們又拓寬了一條圖像處理的道路,利用WebGL,將JavaScript和OpenGL ES2.0結合在一起,實現對二維圖像的處理。

二、圖像顯示原理

(一)Canvas2D加速原理

作為傳統的 2D 繪制接口,Canvas2D 提供了豐富的功能用以繪制 2D 對象。有一套以 begin Path開始,以 close Path 結束的,基于過程的繪制接口,也有如 draw Image 等實時繪制接口,并且維持一個2D 變換矩陣和一組繪制模式,應用在當前繪制的圖形上。其優勢在于使用簡單,開發成本低,而缺點在于繪制方式固定,無法充分利用現代圖形硬件。它提供的繪制方式是以像素為基礎的,并且也支持瀏覽器進行硬件加速。

(二)WebGL繪制原理

WebGL是一款近幾年開發出的JavaScript渲染軟件包。它WebGL 接口的基本功能由著色器(Shader)輸入、繪制指令、狀態指令四部分組成。為了完成一次基本繪制,首先需要初始化著色器,包括編譯著色器,得到著色器內各個輸入的地址等。著色器是將要運行在GPU上的小程序,分為頂點著色器(Vertex Shader)和片段著色器(FragmentShader),頂點著色器負責將輸入的頂點信息轉化為頂點在屏幕上的位置,并且可以計算一些頂點的屬性[2]。光柵化操作依據繪制的圖元,將屏幕上的頂點數組填充成三角形等區域,同時可以考慮遮擋關系,并且自動對三角形的頂點信息插值,將得到的像素則交給片段著色器。片段著色器依據得到像素的各個屬性,計算像素最終的顏色[3]。

三、瀏覽系統分析

(一)WebGL技術與架構

腳本,WebGL技術的核心,也就是著色器,用來定義圖形的每個像素點怎樣展現在顯示器上。WebGL的濾光鏡分為兩類:頂點和片段濾光鏡。頂點濾光鏡職責是確定位置坐標;片段濾光鏡職責是規定此處的色彩[3]。頂點濾光鏡的基本任務是進行轉換,也就是把點從三維模型轉換成二維屏幕上的坐標。片段濾光鏡的基本任務是通知WebGL,模型的某個特定的點應該要渲染哪種顏色。

(二)基于 WebGL-DMA的貼圖繪制

由于圖像選2D貼圖對象常以中心點、旋轉、縮放、紋理映射為主要屬性,根據具體應用中貼圖的屬性的活躍程度,可以設計特定的Shader[4]。文本使用的Shader的頂點屬性輸入為位置、偏移、紋理、顏色和旋轉,其中位置為該頂點所屬貼圖的中心位置,偏移為頂點相對于中心位置的偏移量,而旋轉是貼圖的旋轉角度。由Java Script定義一段頂點著色器程序的字符串,生成并且編譯成一段著色器程序傳遞給GPU。頂點著色器利用位置、偏移和旋轉計算出該頂點的實際位置,可以減少Java Script端的計算量。

四、圖像瀏覽設計

(一)特效處理庫應用

此系統應用多個特效處理庫,其中最主要的一個是Glfx.js,可以利用它在瀏覽器中實時地調整圖片。它通過作用于顯卡,以達到對圖像產生效果的目的。單單用JavaScript編輯是不可能實現實時調整圖像的效果的。對于使用glfx.js是有兩點附加說明需要注意的。第一,WebGL并非所有瀏覽器可以適用它,等到所有用戶可以使用它,需要經過一段相當長的發展期。第二,基于同源的政策,JavaScript只允許讀取某些符合特定標準的圖片,這些圖像必須滿足來自同一個域的腳本[5]。

(二)著色器功能實現

對于畫布對象來說,所有的著色器都是一種作用方法,它們將會修改當前畫布上呈現的圖像。在使用一個著色器之前,需要在當前的畫布上draw()繪制出紋理[6]。基于效率等因素,當每次著色器應用時,內部的圖像緩存不會每次都呈現在屏幕上。當完成了某個過濾器的調用,并且能夠看到圖像效果之后,必須在畫布上主動應用update()刷新頁面,以保證下一個著色器的正常使用。調整區域應用canvas.curves(red,green,blue);函數,這是一個功能十分強大的映射工具,它可以通過調用任何一個函數來實現對圖像上的顏色的轉換。這個函數其實是一個樣條函數,并且是由函數插值之間的一組二維點組成的[7][8]。曲線濾波器可以拾取一個或三個參數,并且分別應用這些映射到亮度或者RGB數值上。

猜你喜歡
功能
拆解復雜功能
鐘表(2023年5期)2023-10-27 04:20:44
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
基層弄虛作假的“新功能取向”
當代陜西(2021年21期)2022-01-19 02:00:26
深刻理解功能關系
鉗把功能創新實踐應用
關于非首都功能疏解的幾點思考
基于PMC窗口功能實現設備同步刷刀功能
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 亚洲乱码视频| 国产精品午夜福利麻豆| 亚洲永久免费网站| 天天色综网| 欧美成在线视频| 欧美日韩第二页| 欧美激情视频一区二区三区免费| 国产综合网站| 在线视频亚洲欧美| 亚洲天堂视频在线观看| 日韩在线1| 欧美一区精品| 亚洲精品无码久久久久苍井空| 亚洲日韩AV无码一区二区三区人| 亚洲综合片| 欧美日韩专区| 国产成人你懂的在线观看| 国产另类视频| 国产在线精彩视频二区| 亚洲V日韩V无码一区二区| 亚洲日韩国产精品综合在线观看| 日本午夜影院| 99热这里都是国产精品| 国产精品无码AV中文| 亚洲国产黄色| 国产成人精品视频一区二区电影| 欧美精品v| 波多野结衣的av一区二区三区| 欧美不卡在线视频| 亚洲国产精品无码AV| 亚洲综合中文字幕国产精品欧美| 色AV色 综合网站| 99爱在线| 国产日韩欧美一区二区三区在线| 欧美激情福利| 欧美亚洲第一页| 无码中文字幕加勒比高清| 在线观看国产黄色| 亚洲资源站av无码网址| 日韩欧美中文在线| 久久久久久尹人网香蕉| 国产精品私拍在线爆乳| 亚洲成人黄色在线观看| 成人a免费α片在线视频网站| 免费精品一区二区h| 久久精品波多野结衣| 色婷婷成人网| 日本高清免费一本在线观看 | 沈阳少妇高潮在线| 丝袜无码一区二区三区| 亚洲欧美综合在线观看| 亚洲欧美国产视频| 久久久久亚洲精品成人网| 国产精品色婷婷在线观看| 精品伊人久久大香线蕉网站| 国产成人区在线观看视频| www.99精品视频在线播放| 国产精品 欧美激情 在线播放 | 91精品伊人久久大香线蕉| 精品自拍视频在线观看| 日韩毛片免费| 成人福利一区二区视频在线| 日本道中文字幕久久一区| 国产精品久久久久久久久久98| 东京热高清无码精品| 青青草国产免费国产| 五月婷婷精品| 日本亚洲成高清一区二区三区| 91色在线观看| 亚洲综合精品香蕉久久网| a毛片在线播放| 久久综合色视频| 蜜桃视频一区| 久久综合色天堂av| 亚洲国产一成久久精品国产成人综合| 久久久精品无码一区二区三区| 黄色网页在线观看| 视频二区中文无码| 在线观看无码a∨| 久草美女视频| 8090成人午夜精品| 91精品国产一区自在线拍|