1 :
名無しさん@├\├\廾□`/:
あんま知識ないけど、画像を結構細かいピクセルでAAに
C言語で変換したいんだ。
とりあえず入門で(?)画像をモザイクにするプログラムは
できたんだけど・・これ応用して作れるもんなの??
/* カラー画像をモザイク化するプログラムcmosaic.c
コンパイルの仕方:gcc -o cmosaic cmosaic.c */
#include <stdio.h>
#include <stdlib.h>
#include "ppmpgm.h"
void make_cmosaic_image()
{
int i,j,x,y,k; /* 制御変数 */
int bsz; /* ブロックサイズ */
int bx,by; /* 横方向と縦方向ブロック数 */
int bvalR,bvalG,bvalB; /* ブロックの平均値 */
int pels; /* ブロック内ピクセル数 */
int X,Y; /* ピクセルの位置 */
printf("カラー画像のモザイク化\n");
pXdim2 = pXdim1; /* 横画素数 */
pYdim2 = pYdim1; /* 縦画素数 */
printf("ブロックサイズを入力してください(1より大きい値):");
scanf("%d",&bsz);
printf("ブロックサイズは%dである。",bsz);
if(pXdim1 % bsz == 0) /* 横方向ブロック数 */
bx = pXdim1 / bsz; /* % 演算子と / 演算子は何にか違うか? */
else
bx = pXdim1 / bsz + 1;
if(pYdim1 % bsz == 0) /* 縦方向ブロック数 */
by = pYdim1 / bsz;
else
by = pYdim1 / bsz + 1;
for(j=0; j<by; j++)
for(i=0; i<bx; i++){ /* ブロックごとに計算する*/
bvalR = bvalG = bvalB = 0;
pels = 0;
for(y=0; y<bsz; y++)
for(x=0;x<bsz; x++){
2 :
名無しさん@├\├\廾□`/:2010/07/31(土) 14:50:20 ID:f6lcKj8+
つづき↓
/* 現在のピクセルの位置を計算する */
X = i*bsz + x;
Y = j*bsz + y;
/* この位置が有効であれば、和を計算する */
if(X>=0 && X<pXdim1 && Y>=0 && Y<pYdim1){
/* 有効なので、ブロック内のピクセル数をカウントする */
pels++;
/* 和を計算する */
bvalR += pimage1[0][Y][X];
bvalG += pimage1[1][Y][X];
bvalB += pimage1[2][Y][X];
}
}
/* ブロック内ピクセルの平均値を計算する */
bvalR /= pels;
bvalG /= pels;
bvalB /= pels;
/* 計算した平均値を目的画像へ代入する */
for(y=0; y<bsz; y++)
for(x=0; x<bsz; x++){
X = i*bsz + x;
Y = j*bsz + y;
if(X>=0 && X<pXdim1 && Y>=0 && Y<pYdim1){
pimage2[0][Y][X] = bvalR;
pimage2[1][Y][X] = bvalG;
pimage2[2][Y][X] = bvalB;
}
}
}
}
main()
{
load_image_ppm(); /* 画像データをpimage1に読み込み */
make_cmosaic_image(); /* pimage1 画像を pimage2 へ */
save_image_ppm(); /* pimage2 を保存する */
return 0;
}
つ 輪郭抽出、細線化
4 :
名無しさん@├\├\廾□`/:2010/08/01(日) 23:05:17 ID:Qeq+gr01
,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、
,' ヽ ,,-'' ヽ
/ ― `’― Y `,
! 3 / !
i * !
| .l
ヽ /
ヽ , '
`" ー───―‐────‐― '"
ぷすっ
ウ ,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、 __ __
ィ ,' ヽ ,,-'' ヽ ______l |______l l
ヒ / ― `’― Y `, / | |
! ! 3 / ____,/ | |
i ( . | |
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |______ |
`" ー───―‐────‐― '" l_| l_|
____ 出
,'"__ ・ _`, .ま
!ヾミミヽ rz彡‐`ヽ し
,´ 、_tッ、,゙ ' r' rtッ_‐ァ' た
l `ー 'ノ !、`ー ' .i ヴ
! . ,イ 'ヽ .! ォ
i ゚ ´...:^ー^:':... i |
\ r ζ竺=ァ‐、 ,'
ヽ `二´ i
`、 ./
ア ,.'" ̄ ̄"ヽ / ,-' ̄ ̄ ̄`-、 __ __
ッ ,' ! ,' ,,-'' ヽ ______l |__l l
l / ― `’―/ / Y `, ./ | | ぐ
! ! 3 / ノ / ____,/ | | い
i  ̄ ( . | | っ
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |___ |
`" ー───―‐────‐― '" l_| l_|
,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、
,' ヽ ,,-'' ヽ
/ ― `’― Y `,
! 3 / !
i * !
| .l
ヽ /
ヽ , '
`" ー───―‐────‐― '"
ぷすっ
ウ ,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、 __ __
ィ ,' ヽ ,,-'' ヽ ______l |______l l
ヒ / ― `’― Y `, / | |
! ! 3 / ____,/ | |
i ( . | |
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |______ |
`" ー───―‐────‐― '" l_| l_|
____ 出
,'"__ ・ _`, .ま
!ヾミミヽ rz彡‐`ヽ し
,´ 、_tッ、,゙ ' r' rtッ_‐ァ' た
l `ー 'ノ !、`ー ' .i ヴ
! . ,イ 'ヽ .! ォ
i ゚ ´...:^ー^:':... i l
\ r ζ竺=ァ‐、 ,'
ヽ `二´ i
`、 ./
ア ,.'" ̄ ̄"ヽ / ,-' ̄ ̄ ̄`-、 __ __
ッ ,' ! ,' ,,-'' ヽ ______l |__l l
l / ― `’―/ / Y `, ./ | | ぐ
! ! 3 / ノ / ____,/ | | い
i  ̄ ( . | | っ
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |___ |
`" ー───―‐────‐― '" l_| l_|
,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、
,' ヽ ,,-'' ヽ
/ ― `’― Y `,
! 3 / !
i * !
| .l
ヽ /
ヽ , '
`" ー───―‐────‐― '"
ぷすっ
ウ ,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、 __ __
ィ ,' ヽ ,,-'' ヽ ______l |______l l
ヒ / ― `’― Y `, / | |
! ! 3 / ____,/ | |
i ( . | |
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |______ |
`" ー───―‐────‐― '" l_| l_|
____ 出
,'"__ ・ _`, .ま
!ヾミミヽ rz彡‐`ヽ し
,´ 、_tッ、,゙ ' r' rtッ_‐ァ' た
l `ー 'ノ !、`ー ' .i ヴ
! . ,イ 'ヽ .!. ォ
i ゚ ´...:^ー^:':... i l
\ r ζ竺=ァ‐、 ,'
ヽ `二´ i
`、 ./
ア ,.'" ̄ ̄"ヽ / ,-' ̄ ̄ ̄`-、 __ __
ッ ,' ! ,' ,,-'' ヽ ______l |__l l
l / ― `’―/ / Y `, ./ | | ぐ
! ! 3 / ノ / ____,/ | | い
i  ̄ ( . | | っ
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |___ |
`" ー───―‐────‐― '" l_| l_|
,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、
,' ヽ ,,-'' ヽ
/ ― `’― Y `,
! 3 / !
i * !
| .l
ヽ /
ヽ , '
`" ー───―‐────‐― '"
ぷすっ
ウ ,.'" ̄ ̄"`、 ,-' ̄ ̄ ̄`-、 __ __
ィ ,' ヽ ,,-'' ヽ ______l |______l l
ヒ / ― `’― Y `, / | |
! ! 3 / ____,/ | |
i ( . | |
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |______ |
`" ー───―‐────‐― '" l_| l_|
____ 出
,'"__ ・ _`, .ま
!ヾミミヽ rz彡‐`ヽ し
,´ 、_tッ、,゙ ' r' rtッ_‐ァ' た
l `ー 'ノ !、`ー ' .i ヴ
! . ,イ 'ヽ .!. ォ
i ゚ ´...:^ー^:':... i l
\ r ζ竺=ァ‐、 ,'
ヽ `二´ i
`、 ./
ア ,.'" ̄ ̄"ヽ / ,-' ̄ ̄ ̄`-、. __ __
ッ ,' ! ,' ,,-'' ヽ ______l |__l l
l / ― `’―/ / Y `, ./ | | ぐ
! .! 3 / ノ / ____,/ | | い
i  ̄ ( . | | っ
|  ̄ `、. | |
ヽ /\ | |
ヽ , ' \________ |___ |
`" ー───―‐────‐― '" l_| l_|