Home > 中問 > H24秋期-問96

H24秋期-問96

[中問C]
データの符号化に関する次の記述を読んで、問に答えよ。

図1は、8×8画素の白黒の画像例である。この図に対して、白を0、黒を1として表すと、図2に示すように8ビットのビット列が8行あるディジタルデータとして、画像データを表現することができる。

文字データしか送れない通信で画像データを送ろうとする場合、画像データを文字データであるかのように変換して通信する必要がある。
また、文字データと比べてデータ量の大きい画像データを効率よく通信するために、データを圧縮して送るという工夫がなされる。図2のビット列を左上から順に見ていくと、0が10個続き、次に1が34個続き、その次に0が20個続いていることが分かる。この同じ値が続く個数のことをランレングスという。これを利用して画像データを圧縮する方法を考える。

次に示す画像データの表現方法は、画像データの情報量を圧縮することを目的とする変換である。図2に示す画像データは、何ビットで表現されるか。

[データの表現方法]
(1)画像データをランレングスで表現し、それらの値を2進数で表現する。
(2)ランレングスの値を2進数で表現したときの値nに対して、そのnの桁数がmのとき、次の形式で、一つのランレングスを表現する。

①桁数の情報:(m-2)ビットの連続する1で表現。なお、mが0~2の場合は、“0”と表現
②区切りの情報:区切りは“0”で表現
③ランレングスの情報:n
例えば、ランレングスの値が20のとき、それを2進数で表現したときの値nは“10100”となり、その桁数mは5となる。したがって、mが5のとき、①は(5-2)ビットの連続する1なので“111”となり、これに区切りの“0”とnをつなげ、結果は“111010100”となる。
(3)(2)で求めた形式の値をつなげていく。このとき、画像データは必ず白から始まるものとし、もし、画像データが黒から始まる場合は、ランレングス0の白があるとして先頭に“000”を補う。

ア:27

イ:30

ウ:33

エ:36

答:ア

(1)の処理
白10、黒34、白20という図2のランレングスは、より白1010、黒100010、白10100になる。

(2)の処理
白1010:桁数は4なので、4-2の2桁の11と区切りの0を補い、1101010
黒100010:桁数は6なので、6-2の4桁の1111と区切りの0を補い、11110100010
白10100:桁数は5なので、5-2の3桁の111と区切りの0を補い、111010100

(3)の処理
先頭に白があるので補う必要がなく、(2)で求めた値をつなげると以下のようになる。
110101011110100010111010100

よって27ビット必要で正解はアとなる。

スポンサーリンク

Home > 中問 > H24秋期-問96

Page Top

© 2011-2022 過去問.com