画像処理 期末試験 模擬問題
※ 期末試験ではこれらに似た問題が出題されます。
※ 期末試験は資料持ち込み可です。手書き・印刷は問いません。
第01回の内容
01-1
実行結果が画像の通りになるように、枠の中に入るコードを書いてください。

01-2
実行結果が画像の通りになるように、枠の中に入るコードを書いてください。

01-3
元画像の左上の16個のピクセルの赤成分が以下の値の場合、最近傍補間で (1.2, 2.8) の座標の位置の赤成分を求めるといくらになるか。
3 |
28 |
30 |
90 |
18 |
0 |
43 |
92 |
48 |
31 |
20 |
17 |
18 |
20 |
53 |
16 |
01-4
元画像の左上の4個のピクセルの赤成分が以下の値の場合、双一次補間で (0.2, 0.6) の座標の位置の赤成分を求めるといくらになるか。
第02回の内容
02-1
次のコードの実行結果の図を描いてください。
size(400, 200);
translate(100, 50);
rect(0, 0, 200, 100);
02-2
次のコードの実行結果の図を描いてください。
size(400, 200);
translate(100, 50);
rotate(PI/4);
rect(0, 0, 200, 100);
02-3
次のコードを実行してコンソールに表示されるものを書いてください。
PVector f = new PVector(5, 0);
PVector c = new PVector(0, 1);
float s = 2;
f.sub(c);
println(f.x + ", " + f.y);
f.div(s);
println(f.x + ", " + f.y);
02-4
次のコードを実行してコンソールに表示されるものを書いてください。
PVector f = new PVector(2, 3);
f.rotate(PI/2);
println(round(f.x) + ", " + round(f.y));
第03回の内容
03-1
実行結果が画像の通りになるように、枠の中に入るコードを書いてください。

03-2
次のコードの実行結果の図を描いてください。
size(400, 200);
shearX(-PI/4);
rect(0, 0, 200, 200);
03-3
次のコードを実行してコンソールに表示されるものを書いてください。
PVector f = new PVector(2, 3);
f.x -= f.y * 0.5;
println(f.x + ", " + f.y);
03-4
次のうち間違っているものに○をつけてください。
- pushMatrix関数は座標系の状態を記憶する関数である
- X方向のスキューでは水平な線は水平なままである
- スキューをかけると図形の面積は大きくなる
第04回の内容
04-1
実行結果が画像の通りになるように、枠の中に入るコードを書いてください。

04-2
任意の形の四角形を長方形に変形させる変換のパラメータをすべて確定させるために必要な、2つの形どうしの対応点の数を答えてください。
04-3
Processingでマウスの右ボタンをクリックしたときに、値「RIGHT」が入る変数は何か答えてください。
04-4
Processingでマウスでドラッグしたときに自動的に実行される関数の名前を答えてください。
第05回の内容
05-1
次のうち、ぼやけ方が少ない方を○で囲んでください。
- 半径1の移動平均フィルタ
- 半径2の移動平均フィルタ
05-2
次のうち、ぼやけ方が少ない方を○で囲んでください。
- 半径2の移動平均フィルタ
- 半径2、\(\sigma=2\sqrt{2\log_e 2}\)のガウシアンフィルタ
05-3
半径 3 の平滑化フィルタで、1つのピクセルの色を決めるのに使われるピクセルの数を答えてください。
05-4
次のうち、1ピクセルの大きさのノイズをほぼ消せるものを○で囲んでください。
- 半径1のメディアンフィルタ
- 半径2の移動平均フィルタ
第06回の内容
06-01
画像の情報がPImage型の変数 img に入っているとき、それを閾値0.4で二値化する命令を書いてください。
06-02
画像の情報がPImage型の変数 img に入っているとき、「img.filter(POSTERIZE, 3);」を実行すると画像が最大何色になるかを書いてください。
06-03
渦型のマスクで組織的ディザリングを行う場合、座標 (83, 91) のピクセルに対する閾値の値を書いてください。
06-04
Processingで「int n = 3<5 ? 1 : 2;」を実行して変数 n に入る値を書いてください。
第07回の内容
07-01
以下の2枚の画像の抽出に使用したフィルタとして、対応するものを線で結んでください。
X方向のフィルタ |
● |
|
● |
 |
Y方向のフィルタ |
● |
|
● |
 |
07-02
以下の2枚の画像の抽出に使用したフィルタとして、対応するものを線で結んでください。
(本番ではもっとわかりやすい画像を使います)
プレヴィットフィルタ |
● |
|
● |
 |
ソーベルフィルタ |
● |
|
● |
 |
07-03
ラプラシアンフィルタの性質として、間違っているものに○をつけてください。
- マスクの要素の和は0である
- 一次微分のフィルタである
- マスクの対角線上の要素がつねに等しい
07-04
X方向とY方向プレヴィットフィルタ、ソーベルフィルタの抽出結果を合成する際の処理として正しいものに○をつけてください。
- 各ピクセルについてそれぞれの結果の2乗の和の平方根をとる
- 各ピクセルについてそれぞれの結果の相加平均をとる
- 各ピクセルについてそれぞれの結果の相乗平均をとる
第08回の内容
08-01
ラプラシアンフィルタを使ったエッジ強調の性質として、間違っているものに○をつけてください。
- マスクの要素の和は0である
- マスクの対角線上の要素がつねに等しい
08-02
アンシャープマスク処理について正しいものに○をつけてください。
- unsharp の英語的な意味の通り、シャープさをなくして画像をぼやけさせる
- unsharp の英語的な意味とは逆に、画像をくっきりさせる
08-03
次のうち、他方よりも明るい部分が多い方に○をつけてください。
- X, Y方向のプレヴィットフィルタの結果を合成した結果を元画像と合成した画像
- X, Y方向のソーベルフィルタの結果を合成した結果を元画像と合成した画像
08-04
あるピクセルについて、元画像での明度を 36 、平滑化した画像での明度を 32 としたとき、アンシャープ処理をした画像での明度を書いてください。
第09回の内容
09-1
次のうち、人間の目に明るく感じられる方に○をつけてください。
- R, G, Bの値が (200, 0, 0) の色
- R, G, Bの値が (0, 0, 100) の色
09-2
セピア色の画像で赤・緑・青成分のうち最も値が大きいのはどれか書いてください。
09-3
ピクセル数が800×600の画像を、縦横それぞれ2ピクセルずつずらしてエンボス化したとき、出力画像の解像度を書いてください。
09-4
次のコードを実行してコンソールに表示されるものを書いてください。
PVector v = new PVector(5, 0);
v.normalize();
println(v.x + ", " + v.y);
第10回の内容
10-1
白黒画像の内部にある9個のピクセルの色が下図の状態だった場合、これに収縮処理を行ったあとの中心のピクセルの色が白・黒のどちらになるかを書いてください。
10-2
白黒画像の内部にある9個のピクセルの色が下図の状態だった場合、これに膨張処理を行ったあとの中心のピクセルの色が白・黒のどちらになるかを書いてください。
10-3
次のうち、収縮処理の結果として正しいものに○をつけてください。ただし、処理前の画像には白と黒のエリアがあり、その中に1ピクセルサイズの反対色のノイズがあるものとします。
- 黒いノイズがほぼ消える
- 白いノイズがほぼ消える
- 白いエリアが広がる
10-4
実行してコンソールに「true」が表示されるように、以下のコードの空欄に入るものを書いてください。
第11回の内容
11-1
膨張処理のあとに収縮処理を行うことを何と呼ぶかを書いてください。
11-2
次のうち、オープニング処理の結果として正しいものに○をつけてください。ただし、処理前の画像には白と黒のエリアがあり、その中に1ピクセルサイズの反対色のノイズがあるものとします。
- 白いノイズがほぼ消え、黒いノイズが大きくなる
- 白いノイズがほぼ消え、黒いノイズがそのまま残る
- 白いエリアが広がる
11-3
次のうち、トップハット処理の説明として正しいものに○をつけてください。
- オープニング処理によって消されるノイズを抽出する
- クロージング処理によって消されるノイズを抽出する
11-4
オープニングのあとでクロージングを行った結果として正しいものに○をつけてください。ただし、処理前の画像には白と黒のエリアがあり、その中に1ピクセルサイズの反対色のノイズがあるものとします。
- 白と黒のノイズの両方が消え、白と黒のエリアの境界はほぼ変わらない
- 白と黒のノイズの両方が消え、白のエリアが広がる
- 白と黒のノイズの両方が消え、黒のエリアが広がる
第12回の内容
12-1
次の文字のうち、細線化したあとの構造がその他と根本的に異なるものを選んでください。
12-2
細線化の処理において、あるピクセルが白いエリアの左端にあるかどうかの判定条件として正しいものを選んでください。
- 自分の左隣が黒で、自分の右隣が白
- 自分の左・左上・右上の隣が黒で、自分の右・右下・左下の隣が白
- 自分の左・左上・左下の隣が黒で、自分の右・右上・右下の隣が白
12-3
細線化の処理において、削る方向の順番として正しいものを選んでください。
- 左上・右上・右下・左下
- 右上・左下・右下・左上
- 右下・右上・左上・左下
12-4
1つ目のマス目の値 a から、同じ位置に対応する2つ目のマス目の値 b を得るための式 (Processingのコード) を書いてください。
第13回の内容
13-01
Processingで「colorMode(HSB, 360, 100, 100);」を実行したあと、「color(0, 0, 100)」で作られる色の名前を書いてください。
13-02
Processingで「colorMode(HSB, 360, 100, 100);」を実行したあと、c が「明るさが最大の70%, 鮮やかさが最大の30%の緑」になるように空欄に入れるものとして正しいものに○をつけてください。
- 120, 70, 30
- 120, 30, 70
- 70, 30, 120
13-03
Processingで「colorMode(HSB, 360, 100, 100);」を実行したあと、「color(180, 50, 30)」で作られる色の性質を、「明るさが最大の**%,
鮮やかさが最大の**%の*」という形で書いてください。
13-04
Processingで以下の命令を実行したあと、色a, bについての説明で正しいものに○をつけてください。
colorMode(HSB, 360, 100, 100);
color a = color(30, 100, 100);
color b = color(30, 100, 50);
第14回の内容
14-01
byte型配列 a の情報を、dataフォルダの中に「b.dat」という名前で保存する命令を書いてください。
14-02
2つのモノクロビットマップ画像を無圧縮でデータ化した場合、正しいものをに○をつけてください。
- 2つの画像の解像度が違っていてもデータファイルのサイズは同じになる
- 2つの画像に描かれているものが違っていてもデータファイルのサイズは同じになる
- 必ずしもデータファイルから元画像と同じものが復元できるとは限らない
14-03
第14回のプログラムで採用した非等長符号で以下のモノクロビットマップ画像をデータ化した場合、データファイルのサイズが最も小さくなるものの記号に○をつけてください。
14-04
第14回のプログラムで採用したランレングス符号で以下のモノクロビットマップ画像をデータ化した場合、データファイルのサイズが最も大きくなるものの記号に○をつけてください。
第15回の内容
15-01
Capture型の変数を初期化するために、コンストラクタを呼ぶ際の第4引数に渡すものとして正しいものに○をつけてください。
15-02
gif画像を作るための初期設定で、setDelay関数の引数として渡す値を大きくした結果として正しいものに○をつけてください。
15-03
以下の2重配列があるとき、mask[1][3]に入っている値を書いてください。
int[][] mask = {{-1, 0, 1, -2, 0, 2, -1, 0, 1}, {-1, -2, -1, 0, 0, 0, 1, 2, 1}};
15-04
以下のコードを実行してコンソールに表示されるものを書いてください。
float a = 724.5;
println(a%360);