アプリ版:「スタンプのみでお礼する」機能のリリースについて

今画像処理で、シマウマの縞模様を変えるというプログラムを作成しています。
シマウマの画像を二値化して、白と黒に分けるところまではできました。
その後の黒い縞の部分を抽出して、別の画像をはめ込むところがよくわかりません。
どのようなプログラムにすればいいのでしょうか?
よろしければ回答お願いしますm(__)m

一応↓に自分が考えた関数のプログラムを載せておきます。
(これを実行しても何も起きません…)
どうかお願いします…・゜・(ノД`;)・゜・


/*---------しまうま関数--------*/

int Simauma(unsigned char inImage[], unsigned char outImage[], int w, int h)
{
 int i,j;
 
 FILE*fp;

 if((fp=fopen("out100.raw", "rb"))==NULL) /* out100:はめ込む画像 */
   printf("ファイルをオープンできません。\n");
 else{
   for(i=0;i<h;i++){
      for(j=0;j<w;j++){
         if(inImage[j*w+i]==0) /* 領域が黒ならば */
         inImage[j*w+i]=outImage[j*w+i];
}
      }
   }
 
 fclose(fp);

 return 1;

}

A 回答 (1件)

C言語よく知らないので


具体的には答えられないのですが。
---

(・ニ値化シマウマデータはdata[]に格納されているとする)
・はめ込み画像ファイル「hame.img」をオープン
・その中身を配列hameData[]に格納
・(hameData[]の値を参考にして)data[]の中身を加工する
・data[]の中身をファイルに書き出す

この流れをそのままソースコードにすればいいのではないでしょうか。
まだ不明な点、ありますかな?
---

>これを実行しても何も起きません…

プログラム内で使いたいデータは
「ファイルから配列に読み出」さないと。
そして、
プログラム内で加工した配列は
「ファイルに書き出」さないと。

質問者さんが掲示したソースコードには、
その「ファイル入出力処理」がすっぽり抜けてます。
とりあえず「ファイル入出力」で検索してみてください。
    • good
    • 0
この回答へのお礼

丁寧な回答ありがとうございます。
そうですね、入出力が確かにありませんね…。
それすらもよくわからなくて…、今検索して考えてます。
それと回答と共に参考にさせてもらいます、本当にありがとうございました!

お礼日時:2006/05/21 22:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!