[英]Read only one RGB color in Octave
我必須使用PNG格式讀取幾百個RGB圖像。 我只需要一種顏色(紅色,綠色或藍色),現在我正在做這樣的事情:
A = imread(file);
A = A(:, :, 1);
我想知道是否有可能只讀取一種顏色的值,以使讀取速度更快。 我需要此操作盡快。
就像提到的@carandraug一樣,octave不提供這種方法。 您已經發布了最簡單的選項。 Octave使用ImageMagick作為讀取圖像文件的后端。 這里沒有太多的優化空間。
此外,如果您確實需要加快讀取大量圖像的過程,則可能需要尋找替代的讀取方法或自行實現。 一個好的起點是libpng的源代碼。 另一個想法是先將RGB png轉換為未壓縮的簡單bmp。 讓圖像轉換過程由您選擇的另一個快速程序處理。 例如在ram驅動器中創建bmp,並使用低級命令(fread)從八度讀取它們。 可以在某種程度上優化此類策略。 但是只有在我們談論大量圖像的情況下,它們才值得付出努力。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.