必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. ITパスポート
  3. 平成24年度秋季問題一覧
  4. 平成24年度秋季問題94-解答・解説-分析

平成24年度秋季問題

問題94

データの符号化に関する次の記述を読んで,四つの問いに答えよ。 図1は,8×8画素の白黒の画像例である。この図に対して,白を0,黒を1として表すと,図2に示すように8ビットのビット列が8行あるディジタルデータとして,画像データを表現することができる。

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

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

〔画像データの表現方法〕

(1)画像データをランレングスで表現し,それらの値を最大15の範囲で区切っていく。例えば,ランレングスが20の場合は,15と5の二つのランレングスに分ける。

(2)白と黒のランレングスをそれぞれ4ビットの2進数で表し,常に"白と黒"の8ビットの組みとして表現する。例えば,白のランレングスが15と5というように続く場合は,その間にランレングス0(2進数では0000)の黒を補い,白のランレングス15と黒のランレングス0の組みを作る。このように,白又は黒が続く場合は間に黒又は白,黒で始まる場合は先頭に白,白で終わる場合は末尾に黒のランレングス0を補うことで,常に白と黒の8ビットの組みを作る。

12
24
40
48

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

〔画像データの表現方法〕

(1)画像データをランレングスで表現し,それらの値を最大15の範囲で区切っていく。例えば,ランレングスが20の場合は,15と5の二つのランレングスに分ける。

(2)白と黒のランレングスをそれぞれ4ビットの2進数で表し,常に"白と黒"の8ビットの組みとして表現する。例えば,白のランレングスが15と5というように続く場合は,その間にランレングス0(2進数では0000)の黒を補い,白のランレングス15と黒のランレングス0の組みを作る。このように,白又は黒が続く場合は間に黒又は白,黒で始まる場合は先頭に白,白で終わる場合は末尾に黒のランレングス0を補うことで,常に白と黒の8ビットの組みを作る。

12
24
40
48

解答:ウ

<解説>

  1. 図2は次のように、3つで構成されている。
  2. 青色の部分は、0が10ビット続いているので、1010です。(2進4ビットの表記で1010)
  3. 黄色の部分は、1が34ビット続いているので、最大15の範囲に分けると、15,15,4のランレングスになります。15,15,4のラングレンスはそれぞれ、1111,1111,0100になります。ただし黒のラングレンスが3つ続くので、それぞれの間にランレングス0(2進表記で0000)の白を補うので、11110000111100000100です。
  4. 赤色の部分は、0が20ビット続いているので、最大15の範囲に分けると、15,5のランレングスになります。15,5のラングレンスはそれぞれ、1111,0101になります。ただし白のラングレンスが2つ続くので、それぞれの間にランレングス0(2進表記で0000)の黒を補うので、111100000101である。ランレングスが白で終わるので、末尾に黒のランレングス0を補うと、1111000001010000になります。
  5. 1~4より1010 1111 0000 1111 0000 0100 1111 0000 0101 0000となります。
  6. 4ビットのランレングスが10個あるので、(ウ)40ビットが正解である。