簡體   English   中英

在八度中僅讀取一種RGB顏色

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM