色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

教程:在ArkUI開發框架中實現馬賽克處理功能

海闊天空的專欄 ? 來源: HarmonyOS開發者 ? 作者: HarmonyOS開發者 ? 2022-05-27 09:48 ? 次閱讀



關于馬賽克

馬賽克是一種使用較為廣泛的圖片處理方式,通過將圖片特定區域的色階細節劣化、色塊打亂讓圖片模糊化,常用來遮擋圖片中的重要信息及隱私內容。本期,我們將通過圖像的基礎知識幫助大家了解圖片馬賽克處理的原理,同時給大家帶來ArkUI開發框架中圖片馬賽克處理的實現。



一、圖像基礎

了解圖片的像素以及分辨率等基礎知識,有助于后文對馬賽克原理的理解。

1. 像素

像素(英文名:pixel,簡稱px)是圖片的最小單位,每張圖片都是由無數的像素點組成。如圖1所示,每個小方格就是一個個的像素點,每個像素點都具有明確的位置坐標和色彩數值,像素點的位置和顏色共同決定該圖片所呈現出來的樣子。

圖片

圖1 像素點

在計算機中,每個像素點的色彩數值都是通過RGB通道來控制,RGB即三原色:紅Red,綠Green,藍Blue的通道,這三種色彩混合疊加,幾乎能形成人類視力所能感知的所有顏色。由此,設置圖片中每個像素的RGB通道分量值,并根據特有的算法或者濾波器,便可讓像素呈現任何顏色。

2. 分辨率

分辨率是圖片在長和寬上各擁有的像素,分辨率越高,所包含的像素就越多,圖片就越清晰,由于分辨率比較低,我們甚至無法辨別圖片的內容。



二、馬賽克原理

增大圖片的分辨率可以讓圖片變得更清晰,那么我們是不是可以降低圖片的分辨率來讓圖片變模糊?

馬賽克的原理就是降低原圖片的分辨率。如圖5所示,首先我們將原圖分割成若干個大小一致的小方格,然后獲取每個小方格中的像素點的平均色彩數值,最后使用獲取到的平均色彩數值替換該方格中所有的像素點,即可實現圖片的馬賽克處理,同時,我們還可以控制圖片中小方格的個數來實現馬賽克的強弱。



三、馬賽克實現

相信大家已經熟悉了馬賽克的原理,下面我們將以全馬賽克圖片為例,為大家介紹基于ArkUI開發框架的馬賽克的具體實現。

1. 首先我們需獲取ArkUI開發框架的image能力,該能力提供了圖片開發的基本接口


import image from "@ohos.multimedia.image"

2. 通過readPixelsToBuffer接口,一次性讀取圖片中所有的像素點數據,每個像素點數據都包含了RGB通道的分量值(如Red:18、Green:250、Blue:20)。

poYBAGKQLNeAYQpAAAAa_RUY-ro266.png

其中ArrayBuffer里面緩存的像素點數據主要包括RGB通道的分量值及圖片透明度,參考代碼如下:

poYBAGKQLO-ADbmRAAAxQGb4az8813.png

3. 根據自定義的單個小方格的Width和Height,將整個圖片分成若干小方格。

poYBAGKQLQeAW_NDAAAhZq4gp9c027.png

4. 獲取每個小方格左上角的最大坐標及右下角的最小坐標,以確定小方格的區域。并根據每個小方格內的所有像素點數據統一該區域的像素,統一方式可以是取該區域內像素點的平均值,或者隨機選取一個像素。

參考代碼如下:

pYYBAGKQLSGAE46IAABzQyPojdI587.png

5. 通過writeBufferToPixels接口,將統一的像素點數據緩存到ArrayBuffer中,并寫入PixelMap,由此得到整張馬賽克處理的圖片。

writeBufferToPixels(src: ArrayBuffer): Promise<void>



四、涂鴉馬賽克

通過上文的介紹,相信大家已經基本掌握了馬賽克的實現。下面我們將為大家帶來馬賽克開發的具體實例“涂鴉馬賽克”,即可以根據手指滑動的軌跡,生成對應的馬賽克區域。本文僅提供實現思路及關鍵代碼,感興趣的小伙伴可結合上文的介紹補全代碼。

1. 給圖片添加Touch事件,獲取手指的運動軌跡。參考代碼如下:

poYBAGKQLUGAGADZAABS_-Fmjvk083.png

2. 根據運動軌跡,以觸摸點的坐標(x,y)為中心,根據自定義小方格的大小,動態確認馬賽克區域的位置。參考代碼如下:

pYYBAGKQLVGAPgXRAABkMNZ-HMo205.png

3. 統一馬賽克區域的所有的像素點值。

pYYBAGKQLWWAMSveAABFpATje6g460.png

4. 最后將更改的像素點寫入圖片中,即可得到手指滑動軌跡的馬賽克圖片。

以上就是本期全部內容,恭喜你花幾分鐘時間獲得了一個實用的技能。期待廣大開發者能開發出更多有趣的馬賽克應用。

來源:HarmonyOS開發者

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 馬賽克
    +關注

    關注

    0

    文章

    14

    瀏覽量

    7050
收藏 人收藏

    評論

    相關推薦

    #硬聲創作季 4-6 馬賽克

    圖像處理馬賽克
    Mr_haohao
    發布于 :2022年08月30日 18:19:01

    《Visual C# 2008程序設計經典案例設計與實現》---圖像的馬賽克效果

    《Visual C# 2008程序設計經典案例設計與實現》---圖像的馬賽克效果.zip[hide][/hide]
    發表于 05-13 19:46

    請問為什么PCB上會有馬賽克的東西?

    `請問為什么PCB上會有這些馬賽克的東西,只有VDD網絡會有`
    發表于 06-18 14:22

    如何解決“馬賽克”問題呢?

    什么是LED顯示屏馬賽克現象?如何解決“馬賽克”問題呢?
    發表于 06-01 06:56

    基于ArkUI開發框架,圖片馬賽克處理實現

    馬賽克處理的原理,同時給大家帶來ArkUI開發框架圖片馬賽
    發表于 05-31 18:50

    數字電視的馬賽克業務

    數字電視為用戶提供了許多模擬電視無法提供的服務,馬賽克業務就是其中一種有特色的業務。簡要介紹了馬賽克業務的原理以及DVB規范中馬賽克業務的實現,并提出了一種利用機
    發表于 07-16 15:31 ?22次下載

    iPhone8支持去馬賽克功能,錢包已經饑渴難耐

    而近日,有國外網友爆料,蘋果今年9月即將發布的iPhone 8將支持去馬賽克技術,這是反馬賽克技術問世后的首部支持去馬賽克的手機。據稱,去馬賽克功能
    發表于 04-06 09:04 ?9243次閱讀

    如何解決"馬賽克"問題呢?

    的。 什么是LED顯示屏馬賽克現象? LED模塊就是把LED(發光二極管)按一定規則排列在一起再封裝起來,加上一些防水處理組成的產品,就是LED模組。
    發表于 01-19 09:17 ?1611次閱讀

    如何解決LED顯示屏“馬賽克”問題

    "馬賽克"現象是一直以來困擾LED顯示屏制造商的難題。從現象上看,LED顯示屏"馬賽克"的現象表現為顯示面亮致性,即均勻性差。
    的頭像 發表于 05-22 14:42 ?6045次閱讀

    馬賽克模擬屏組成單元_馬賽克模擬屏的分類

    馬賽克模擬屏是一種廣泛電力、煤炭、水利、環保、公路、鐵路、航空、化工等行業的電氣設備,它在安全生產系統中發揮著不可替代的作用。
    的頭像 發表于 12-09 14:30 ?5790次閱讀
    <b class='flag-5'>馬賽克</b>模擬屏組成單元_<b class='flag-5'>馬賽克</b>模擬屏的分類

    美國開發自動還原馬賽克的AI開源算法

    看到模糊的照片,是不是有還原真實面目的沖動?以前的技術做不到,AI時代一切皆有可能。美國杜克大學開發的AI算法就可以做到馬賽克圖片變高清。
    的頭像 發表于 12-02 13:53 ?1622次閱讀

    Depix:可通過AI一鍵移除馬賽克

    人們都不喜歡馬賽克,以至于誕生出了“馬賽克阻止人類文明進步”的箴言。
    的頭像 發表于 01-04 15:27 ?1.2w次閱讀
    Depix:可通過AI一鍵移除<b class='flag-5'>馬賽克</b>

    近期電視畫面或將出現馬賽克

    如果你最近看電視,那么小心了,因為電視畫面可能出現馬賽克
    的頭像 發表于 03-07 09:43 ?1863次閱讀

    iPhone13拍照有馬賽克 又現新bug

    iPhone 13 出現了問題,照片自動出現馬賽克,并且還有及屏幕顏色分辨不準確的問題。 從視頻上看,拍之前看沒什么問題,但是拍完后就有了馬賽克,所以iPhone13這次的問題應該是屬于軟件算法問題,并不是硬件原因。 iPh
    的頭像 發表于 09-26 17:14 ?4248次閱讀

    Pooling與馬賽克的秘密

    ?結合圖像理解,相信你也會大概明白其中的本意。不過Pooling并不是只可以選取2x2的窗口大小,即便是3x3,5x5等等沒問題,步長(Stride)也是一個道理。除了神經網絡方面,Pooling為圖片打馬賽克也是可以取得不錯的效果,結合幾個例子看看。
    的頭像 發表于 11-20 16:53 ?483次閱讀
    Pooling與<b class='flag-5'>馬賽克</b>的秘密
    主站蜘蛛池模板: 亚洲国产综合另类视频| 99视频在线国产| 国产99久久| 狼与美女谐音歌词| 小便japanesewctv| YELLOW视频直播在线观看| 久99re视频9在线观看| 天天射天天爱天天干| 97色伦图区97色伦综合图区 | 欧美日韩综合一区| 亚洲伊人久久大香线蕉综合图片| 成人在线观看免费视频| 免费A级毛片无码鲁大师| 亚洲欧美精品无码大片在线观看| 国产av免费观看日本| 欧美成人亚洲高清在线观看| 用震蛋调教女性下面视频| 国产欧美日韩网站| 特大黑人娇小亚洲女mp4| qvod在线观看| 免费无码国产欧美久久18| 伊人久久亚洲精品一区| 国产一区2区| 污污内射久久一区二区欧美日韩| 超碰99热在线精品视频| 男女做爽爽爽视频免费软件 | 日韩欧美视频一区| 99热久久这里只有精品视频| 久久免费视频1| 亚洲在线中文无码首页| 国产一区二区三区国产精品| 丝袜情趣在线资源二区| 动漫护士被乳羞羞漫| 欧美色图14p| 99热久久久无码国产精品性麻豆| 老湿机一区午夜精品免费福利 | 一扒二脱三插片在线观看| 户外插BBBBB| 亚洲精品国产品国语在线试看| 国产人成高清在线视频99| 西西人体大胆牲交PP6777|