聊下圖片濾鏡,手機上的,lookup table(顏色尋找表

來源:互聯網
上載者:User

標籤:and   use   input   auto   output   ram   gen   尋找   orm   

今天這裡要介紹的是lookup table(顏色尋找表),簡而言之就是通過將每一個原始的顏色進行轉換之後成為一個新的顏色。

打一個比方,比如原始顏色是紅色(r:255,g:0,b:0),進行轉換後變為綠色(r:0,g:255,b:0),以後所有是紅色的地方都會被自動轉換為綠色。

而顏色尋找表就是將所有的顏色進行一次(矩陣)轉換,而很多的濾鏡功能就是提供了這麼一個轉換的矩陣,在原始色彩的基礎上進行顏色的轉換。

引:謝灰灰在找胡蘿蔔
連結:https://www.jianshu.com/p/b470a5b5a560  Original Lookup Table

然而IOS內建的影像處理API中並沒有提供顏色尋找表相關的內容。即使如此,善解人意的GPUImage的大大們給我們提供了一個相關的介面,今天就來簡單的介紹一下用法。

1 圖片添加濾鏡效果

 

資源:一張圖片(隨意),photoshop

a)在photoshop中載入原始圖片

 原始樣本圖片

 

b)調整photoshop中的調整面板,對映像進行調整,並達到滿意的效果。

 在該調整面板對映像進行調整

 

 調整後的映像

 

c)在達到滿意的效果之後,對original lookup table(原始顏色尋找表)進行一次相同的調整操作

 調整前

 

 調整後

 

d)將調整後得到的lookup table另存新檔NewLookupTable.png

 

2 代碼中引用lookup table

 

GPUImage是一個相當出名的第三方影像處理庫,這裡就不對這個庫進行介紹了。

GPUImage中有一個專門針對lookup table進行處理的濾鏡函數GPUImageLookupFilter,使用這個函數就可以直接對圖片進行濾鏡添加操作了。

 

//originalImg是你希望添加濾鏡的原始圖片

- (UIImage *)applyFIlter:(UIImage *)originalImg {

UIImage *inputImage =originalImg;

UIImage *outputImage = nil;

GPUImagePicture *stillImageSource = [[GPUImagePicture alloc] initWithImage:inputImage];

//添加濾鏡

GPUImageLookupFilter *lookUpFilter = [[GPUImageLookupFilter alloc] init];

//匯入之前儲存的NewLookupTable.png檔案

GPUImagePicture *lookupImg = [[GPUImagePicturealloc] initWithImage:[UIImageimageNamed: @“NewLookupTable.png”]];

[lookupImg addTarget:lookUpFilteratTextureLocation:1];

[stillImageSource addTarget:lookUpFilteratTextureLocation:0];

[lookUpFilter useNextFrameForImageCapture];

if([lookupImg processImageWithCompletionHandler:nil] && [stillImageSource processImageWithCompletionHandler:nil]) {

outputImage= [lookUpFilterimageFromCurrentFramebuffer];

}

return outputImage;

}

就這樣濾鏡就可以添加成功了,很簡單把,哈哈。

對了哈,GPUImage這個庫裡面會有一張lookup table的圖片的,在GPUImageLookupFilter相關的檔案夾內,大家可以找一找。




聊片濾鏡,手機上的,lookup table(顏色尋找表

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.