画像のRGB取得
Posted: 2010年8月28日(土) 21:27
はじめて質問させていただきます
C言語はある程度はわかりますが、まだ勉強中です
タイトルの通り、16*16の指定した画像の左上([0,0])のドットのRGBを取得したいのですが上手くいきません
検索などをして一応下記のように作ってはみたのですが0.0000が表示されるだけで取得してくれません
取得位置の問題かと思い、全体を黒に塗った画像を使ってみたのですが0のままでした
どこが間違っているのでしょうか?お教えいただけると助かります
(下記のプログラムでは16*16のtest.bmpというファイルを読み込んで、左上のRedを取得しようとしています)
#include <stdio.h>
#include <stdlib.h>
int main(void){
FILE *fo;
unsigned char header[54];
unsigned char pixcel[16][16][3];
fo=fopen("test.bmp","rb");
fread(header,1,54,fo);//前54byte(?)が邪魔
fread(pixcel,1,16*16*3,fo);
fclose(fo);
printf("%f",pixcel[0][0][0]);
}
C言語はある程度はわかりますが、まだ勉強中です
タイトルの通り、16*16の指定した画像の左上([0,0])のドットのRGBを取得したいのですが上手くいきません
検索などをして一応下記のように作ってはみたのですが0.0000が表示されるだけで取得してくれません
取得位置の問題かと思い、全体を黒に塗った画像を使ってみたのですが0のままでした
どこが間違っているのでしょうか?お教えいただけると助かります
(下記のプログラムでは16*16のtest.bmpというファイルを読み込んで、左上のRedを取得しようとしています)
#include <stdio.h>
#include <stdlib.h>
int main(void){
FILE *fo;
unsigned char header[54];
unsigned char pixcel[16][16][3];
fo=fopen("test.bmp","rb");
fread(header,1,54,fo);//前54byte(?)が邪魔
fread(pixcel,1,16*16*3,fo);
fclose(fo);
printf("%f",pixcel[0][0][0]);
}