Witam. Mój problem dotyczy programu Scilab i przetwarzania grafiki z wykorzystaniem toolboxu SIVP (http://sivp.sourceforge.net/). Chciałem napisać kod przetwarzający 24-bitową grafikę w kolorze na 8-bitową grafikę czarno-białą. W tym celu napisałem taki kod:
clear all, clc, clf // wyczyść wszystko
obraz_we=imread('obraz_rgb.bmp'); // wczytaj obraz_we (funkcja dostępna dzięki SIVP)
imshow(obraz_we); // pokaż obraz_we (funkcja dostępna dzięki SIVP)
[wys, szer, gl]=size(obraz_we) //pobierz i wypisz rozmiar obrazu
obraz_wy=zeros(wys,szer); // utwórz macierz o wym wys x szer.
for w=1:wys
for s=1:szer
r=obraz_we(w,s,1); // pobierz współrzędne koloru
g=obraz_we(w,s,2);
b=obraz_we(w,s,3);
sr=round((r+g+b)/3); // wylicz odcień szarości
obraz_wy(w,s)=sr; // przypisz wartość do obraz_wy (?)
end;
end;
obraz_we - obraz 24-bit na wejściu, wczytywany z pliku bmp.
obraz_we - obraz 8-bit na wyjściu.
Problem jest z linijką oznaczoną symbolem (?). Jeśli ją zakomentuję, kod wykonuje się do końca, jeśli nie - skrypt się zawiesza. Co może być tego przyczyną? Pozdrawiam i z góry dzięki za odpowiedzi.