
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
DIBの場合ですが、既出の通りで、1バイト当たりに8ピクセル分のデータを詰め込んでいる上(1バイト8ビット前提のお話)、折り返す1ライン辺りが4の倍数でなければならないなど、一見単純に見えて、結構面倒だったりもします。
恐らく以下で計算出来た筈です。
static LONG CalcScanLineByte(const LONG w, const WORD bpp)
{
return (((bpp * w) + 31) / 32) * 4;
}
//横幅1ピクセル、1ビット(モノクロ)イメージのスキャンバイト数
int scanLine = CalcScanLineByte(1, 1);
No.3
- 回答日時:
>実行結果「画像Aと画像Bは0%一致しています。
」なんか違うような・・。
実際に、添付に示すとおり、質問者様の画像Aと画像Bを作ってみました。
・ちょっと見、「画像Aと画像Bは、100%一致しています。」といいたくなります。
>ピクセル単位で比較して、それらの画像がどのくらい一致しているかを数値で判断すると・・
画像Aは、画像Bと 0%一致しています、となり、
画像Aは、画像Cと50%一致しています、となります。
↑このことを「判断するサンプルコードをC言語でどなたか教えてください」でよいのなら、
(BMPの例ですが・・)
http://www14.big.or.jp/~ken1/tech/tech12.html
を参考にしてください。
なお、16と256色での説明ですが、「白黒2値画像」の場合は、データ8ビットがそのまま8ピクセルに対応します。
バイナリモードで読み込んで、ビット単位で比較するだけかと・・。
添付図のように、「判断する」ことにあまり意味があるとは思えませんが、
プログラムを勉強する上では、よろしいかと・・。


No.2
- 回答日時:
画像AとBを先頭ピクセルから比較していって合計を画像サイズで割ればいいんでは?
int sum=0;
for(int y=0;y<image_height;y++){
for(int x=0;x<image_height;x++){
if (imageA[x][y]==imageB[x][y])sum++;
}
}
int anser = sum/image_size;
こんな感じ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画像認識アルゴリズムについて
-
背景画像の繰り返しについて
-
UWSCの画像認識と条件分岐につ...
-
EXCEL VBA 複数のImageコントロ...
-
OpenCVで出力を24bitのbmpにす...
-
ラジオボタンを押すと、ランダ...
-
VB6での画像のサイズ変更に関して
-
uwscについての質問です。 画面...
-
VBAのユーザーフォームのイメー...
-
【EXCEL VBA】ダブルクリックで...
-
画像の抽出
-
画像の存在チェック
-
HTMLで画像をポップアップで表...
-
エクセルのマクロでコンタクト...
-
画像のピクセルデータの取得
-
「ご処理進めて頂きますようお...
-
エクセルVBAで、MsgBox やInput...
-
UPS警告音を止めたい
-
CloseとDisposeの違い
-
メルカリのメルカードで買い物...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL VBA 複数のImageコントロ...
-
VBAのユーザーフォームのイメー...
-
Excel ユーザーフォームで表示...
-
【EXCEL VBA】ダブルクリックで...
-
スマホでサイトの画像を長押し→...
-
UWSC 画像判定と条件分岐について
-
HTMLで画像をポップアップで表...
-
「using Windows」でエラーが出る
-
画像のビット数を変更する方法
-
画像処理したBitmapをピクチャ...
-
UWSC「画像が無い場合」
-
背景画像の繰り返しについて
-
PowerPoint VBA で画像の鮮明度...
-
uwcs のマクロで画像認識をして...
-
gif 画像上の ボタンに リン...
-
画像が分割されて切り替わる、...
-
uwscの画像認識に失敗します。
-
C#で画像を他の画像に貼り付け...
-
vb.net 画像の透過について
-
MFCでCImageListに画像追加失敗
おすすめ情報