亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

govips中多張圖片的并行疊加

govips中多張圖片的并行疊加

Go
當年話下 2022-11-28 17:17:25
在Govips中,是否有將多個圖像并行疊加在基本圖像上的功能?有一個函數 - compositeMulti 獲取圖像列表但它是否并行渲染它?此外,它是否能夠識別必須在圖像上渲染哪個圖像的哪個像素,而不是迭代地遍歷所有圖像并一張一張地渲染。
查看完整描述

1 回答

?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

libvips(govips 背后的圖像處理庫)是需求驅動的和水平線程的。正在計算的圖像處理管道以圖形表示,您 PC 上的每個線程在輸出圖像中選擇一個圖塊(通常為 128 x 128 像素),并且線程獨立地從圖形的末端開始計算像素。

運算符(調用的composite東西compositeMulti)計算使用 PDF 樣式混合模式疊加一組圖層的結果。對于每個圖塊,它選擇在該點可見的圖層子集。它只能在選定的混合模式是“可跳過”的情況下執行此操作,即。在基本圖像上合成黑色(空像素)將無效。

您可以在此處查看可跳過性測試:

https://github.com/libvips/libvips/blob/master/libvips/conversion/composite.cpp#L1273-L1296

層剔除循環在這里:

https://github.com/libvips/libvips/blob/master/libvips/conversion/composite.cpp#L443-L460

最后,選擇的層被合成,如果可能的話使用矢量算法。它將 RGBA 像素表示為四個浮點數的向量,并將它們一起計算。

tldr:libvips composite 是線程化的、矢量化的,并且(如果可能的話)進行平鋪可見性剔除。


查看完整回答
反對 回復 2022-11-28
  • 1 回答
  • 0 關注
  • 128 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號