京都大学ELCAS(エルキャス)

実施レポート

[基盤コース後期]電気電子工学

2018年1月20日

  • 実施場所

    吉田キャンパス総合研究9号館 I-202

  • 当日の講師

    延原 章平 講師(情報学研究科 知能情報学専攻 画像メディア分野)

  • チューター

    村井 聖

  • 実習の内容

    スマートフォンなどに使用されているものと同等のカメラを備えたRaspberry Piを用いて、撮像素子から得られる原信号がどのようなものであるのか、そしてそこから実際にユーザが見ることになる画像へと現像されるのか、について実習形式で学ぶ。具体的にはレンズによる口径蝕が発生するメカニズムとその補正方法、カラーキャリブレーションの考え方と実行方法、ガンマ補正に代表されるトーンマッピングの意味などについて、pythonでプログラムを書きながら実習する。

  • Raspberry Piにカメラモジュールを接続している様子

活動を通して学んだこと

  • 本来明暗に差が出るはずの写真を、補正することによって私たちが目で見ているような色に近づける「ガンマ補正」について、その仕組みを学習した。
  • デジタル画像はただ単にカメラがとらえた映像をそのまま写しているのではなく、RAW画像をカメラ内部で補正し、さらに表示デバイスに情報を受け渡しする際にもガンマ補正が行われているのだと学ぶことができました。拡散フィルターを通して撮影した写真を使い、画像一面が最高輝度と同じ輝度で統一されるようそれぞれの画素の輝度を拡大する「周辺光量落ちの補正」や、カラーチェッカーを撮影し、[R,G,B]がそれぞれ何倍されれば期待されている色になるのかを調べ、補正する「カラーバランス補正」など画像の補正法を理解でき、とても関心が持てました。ただし、先生がおっしゃっていたように、デジタル画像と印刷画像との間には大きな色彩の差があることは問題だと感じました。なぜ印刷するとガンマ補正が大きくずれてしまうのかについても知りたいです。
  • 部屋の壁に小さな穴を開けると外の像が映ることが知られていた。15世紀それを小箱で再現しを手書きで写す、ピンホールカメラ。長くを経て19世紀1826年、アスファルトを感光材にして撮るカメラが開発された、今ならば1秒もかからない撮影に8時間かかったそうだ。しばらくして1839年、銅板を化学的に反応させて撮るもの、1841年の銀塩フィルムのもの。この銀塩フィルムの技術はいまでも使われているという。そして、様々な改良を経て世界中に普及したフィルムカメラだったが、今や修学旅行生と、マニアの間でしか見ない、自分も実際に使ったことはあるが、一度だけだ。 フィルムカメラが化学変化によって写真を撮るのに対し、デジタルカメラは光を電気的な符号に変えて撮る。しかし、光を電気符号に変えただけの「生の写真」は、色調もおかしければ、歪んだり、画像の縁が暗くなったり、補正が必要なものだった。 画像の補正と聞くと、プリクラやSNS映えを狙った写真が思い浮かぶ。だが、今回の実習で、カメラのレンズで『撮影』した画像は、そのように普段想像するものとはかけ離れたものであり、自分たちがよく見る画像は、生の写真をもとに『作られた』画像であるということを知った。 細かい方法などはここでは省略させてもらうが、数学的にデータを調節するだけではなく、人間の目も利用し、調節しているということを知った。 また、写真などの人間のための製品を作るためには、人間のことをよく知ることも大切なのだとわかった。
  • 画像の周辺部の光量落ち、カラーバランス、知覚的な綺麗さの補正の仕方を知りました。また、TV, スマートフォン、ディジタルカメラなどの画像や蛍光灯の色など、身の回りの製品の殆んどが、人の目に入ってきやすい色を多くするように加工されていることを知りました。

2018年1月6日

  • 実施場所

    吉田キャンパス 総合研究9号館 南棟 I-202

  • 当日の講師

    黒橋 禎夫 教授(情報学研究科 知能情報学専攻 言語メディア分野)
    河原 大輔 准教授(情報学研究科 知能情報学専攻 言語メディア分野)
    村脇 有吾 助教(情報学研究科 知能情報学専攻 言語メディア分野)

  • 実習の内容

    言語処理の概論講義、計算アルゴリズムの演習、言語処理のプログラミング演習

  • 言語処理の概論講義
  • 言語処理のプログラミング演習

活動を通して学んだこと

  • 単語を文脈などの関係から、数値化することによって、単語や文どうしの類似度を求めることができると分かった。ある単語を入力すると、それに似た単語が表示されるのがとても面白かった。
  • コンピュータのテキスト処理の方法やソートの方法などを知ることができました。ソートについては、どのソート法も無駄が多いため、まだ改善の余地があり、ソートにかかる時間もまだまだ減らしていけるはずだと考えました。また、私はこれまでプログラミングをした経験がなかったのですが、選択ソートとバブルソートのそれぞれのコード例を説明していただき、コードの様相を知ることができました。Word2vecを使っての実習では、コンピュータが文を単語ごとに区切ることができるほどに技術が進歩していると知ることができました。
  • 私たちが言葉を発するとき、主語動詞etcなどを気にして話すことは少ない、無意識のうちに行なっているのだろう。しかし、コンピュータはそうではない、決められた方法を使って「話す」 コンピュータが自然言語に接するとき、私(あまり英語が得意でない人)が英語に接するときと同じような手順を踏む。文節を区切り、キーとなる単語を見つけ、文全体の意味を理解する。たくさんの文章を読めば、言語に対する理解度も高くなる、人間が10文読む間に、コンピュータは100、1000、(もっとかもしれないが…)読むのだろう。そうして作られたコンピュータの文章理解力はある意味では、人間を越すのかもしれない。ただ、文章を文字から理解するのには限界もあると思う、詩的な韻文などの省略や、作者の背景を知らなくてはわからないような文章もあるだろうからだ。もし、そういった背景知識も学ばせ理解することができたなら、もはや人間に引けを取らないと言えるだろう。 文章中で単語の使用頻度を調べる際に、文字のコード化と、並び替えのアルゴリズムを使用しているということがわかった。主流の文字コードの一つとして、utf-8がある、忘れかけていたが、私は以前に利用したことがあった、HTMLの編集をしていたときである、HTMLの最初にどの文字コードを使用するかという定義をしなくてはならない、その際に見ていたのだ。ほぼ毎日見ているWebサイトで利用されているという意味では毎日お世話になっている、世界共通のコードを使うことで、文字化けを減らしたり、計算式の共通化ができるということがわかった。 単語をベクトルで表すことで、単語の距離、意味合いの近さを表すことができるということがわかった。それにより、意味が近いと思われる単語を置き換えて考えたり、似た文章として理解したりすることで、より的確な文章理解に繋がると思った。多義語などの曖昧な意味を理解することができれば、より良くなると思った。
  • 翻訳機能がきちんと作動するには、多くの情報解析とそれを最大限活用するためのプログラミングの技術が必要だとわかりました。
  • 翻訳を、文脈を学ばせることで可能にすると言うのがすごいと思うと同時に、翻訳と言う、文系のようなことにも数学が利用されていたことに感心しました。
  • インターネット上などでの言語認識に使われる手法について学習した。莫大な量のデータベース上にある単語の相関関係や類似度プログラミング言語を用いてソート(並び替え)を行って例えば京都という言葉と大阪という言葉はベクトルとして近いということなどを知った。だが問題点も多く、有名な問題としては外国人参政権と言う言葉が外国 人参 政権といった風に分けられ英訳される等がある。こういった内容について最終発表で紹介しても面白いかもしれないと思う。

2017年12月16日

  • 実施場所

    吉田キャンパス 総合研究9号館南棟

  • 当日の講師

    新熊 亮一 准教授(情報学研究科 通信情報システム専攻 大木研究室)
    佐藤 丈博 助教(情報学研究科 通信情報システム専攻 大木研究室)

  • チューター

    上林 将大、山田 祥充、宮野 功晟

  • ボランティア

    榊原 太一、澤 孝晃、林田 尚之、兵頭 直樹、平野 佑季

  • 実習の内容

    通信ネットワークの基礎を模擬講義にて学習した後、ノートPC、スマートフォン、スイッチングハブ等を使用して、動画ファイルの転送を行うネットワークを構築した。パケットキャプチャのソフトウェアを用いて、データパケットが模擬講義で学んだプロトコルにしたがって実際に伝送されていることを確認した。

  • 実習の様子
  • 実習の様子
  • 実習の様子

活動を通して学んだこと

  • 普段使っているインターネットの裏側でコンピュータ同士の様々な約束事があり、それらを瞬時に、また的確に処理し、クライアントにデータを届けているということがわかった。IPアドレスや、ネットワークなど学校の情報の授業でも聞いたことがある単語やその意味をよりわかりやすく、より深く学ぶことができた。実習では、大学4回・院生の方から教えてもらいつつ、スピーディに進めることができた。二代のパソコンを有線で繋ぎデータを送ることから、無線を使って送ることまで行った。小さいながらもネットワークができた。この隣の人と有線で、近くの人の端末と無線で、データをやりとりしていき大きなネットワークを作っていったのだと思った。また、たくさんの人とデータの共有をする中で、素早く目的地を探したり、セキュリティ上の問題があったりして、今の形になっていったのだと思った。これからは、IoTの時代、AIの時代など言われている。その中でブラックボックス化しつつあるシステムの一端を知ることにより、より良い、安全で使いやすいシステムを作っていけるのだと思った。
  • 有線と無線の通信について学んだ。サーバにつないで情報をやり取りする際、コンピューターが実際にどのような信号を送受信しているのかということについて、パソコンの動画をスマートフォンで閲覧することによって学んだ。また、自分は、人工知能に興味があり、プログラミング言語についても少し教えていただいた。
  • データを送り合うときに段階を分けて通信をしていると言うことがわかりました。
  • 僕たちが日常的に使っているコンピュータが一つのデータを通信するときに、コンピュータ同士が互い膨大な量のやり取りをしていることを知りました。

2017年12月2日

  • 実施場所

    吉田キャンパス 総合研究12号館、国際イノベーション棟

  • 当日の講師

    佐藤 亨 教授(情報学研究科 通信情報システム専攻 超高速信号処理分野)

  • チューター

    村垣 政志、大石 健太郎、塩野 佑貴

  • 実習の内容

    レーダー計測の原理と、主に人体を対象とした計測技術について、特に高校において学習する数学(および大学で学習する数学の基礎的部分)との関係に重点を置いて解説した。次にミリ波レーダーを用いて簡単な計測実験を行わせた。まず反射体となるコーナーリフレクタを、厚紙とアルミフォイルを用いて自作させた。各自が制作したものをレーダーで実測し、反射強度を定量的に比較させた。さらに心電計とレーダーによる心拍計測を体験させた。最後に総合討論を行った。

  • レーダ技術に関する説明
  • コーナーリフレクタの制作
  • レーダー装置の説明

活動を通して学んだこと

  • 人間が見ているものを、機械にも理解させるにはどうすれば良いのか。単純に人間と同様に可視光線のカメラを利用したものでは、視界不良時の誤作動や、脳の情報補足の点で劣る。そのために、可視光の他に音波や電波を使う機械が作られてきたのだろう。それぞれに長所短所があり、それらを場面により使い分けているのだと知った。そして、レーダーの反射により生体の微弱な動きを検知できるというのには驚いた。私はこれまでレーダーといえば、軍事用の大きなものか、雨雲などを大体で捉えるぐらいの精度しかないものだと思っていた。しかし、今回離れた距離から心臓の拍動による距離のズレまで測れるということを知った。いずれは、距離を測り複数人から個人別のデータを抽出、解析するところまで自動化されるのだろうと思った。研究だけでなく製品化する場合は、機器の強度・小型化や電力を得る方法、万人に使えるかまで考える必要があるのだと思った。また、高校で学んだ知識も大学、その先で生きてくるのだと思った。
  • レーダーについて現在どのような場面で使われているのかを知ることができました。また、自動運転などこの分野では研究が進んでいると思っていましたが、レーダーの研究を社会で実用化するにはまだ問題点も多く、開発の余地がある分野だとわかりました。教授は将来的にはレーダーを使い家族の健康チェックやオフィスでのストレスチェック、幼稚園や老人ホームでの見守りなどを目指しているとおっしゃいました。それが実現したら、特に待機児童問題や介護問題の人員不足を解決できると思います。また、コーナーリフレクターの実験では少しの差異が実験結果に大きな誤差をもたらすと実感しました。
  • 僅かな振動に着目して、そこから心拍数などに結びつけているところがおもしろいと思いました。また、大学の研究は必ずしも工業のみで役立つのではなく、医療などにも応用できるということを学びました。
  • 高校数学の重要性と電気電子工学におけるその応用

2017年11月18日

  • 実施場所

    吉田キャンパス 総合研究9号館W303

  • 当日の講師

    山本 高至 准教授(工学部電気電子工学科 伝送メディア分野 守倉研究室)

  • チューター

    香田 優介、吉川 慧司

  • 実習の内容

    和積変換公式を用いて音声帯域でのディジタル変調信号を生成し、オシロスコープやスペクトラムアナライザで観測するとともに、同期検波により受信。ハミング符号によるディジタル系列の誤り訂正・検出の原理を説明し、手計算により誤り訂正ができることを確認。

  • 無線LANの帯域についての説明
  • ディジタル変調信号の生成
  • ディジタル信号の受信

活動を通して学んだこと

  • アナログデータをデジタルデータにする標本化・量子化については学校でも少し習ったが、それを電波によって送る方法は初めて知った。電波のうねりを利用して高低を作り、0と1を切り替えているのだと実習を通してわかった。標本化・量子化の取り方によって、音質(データ)に大きな影響、音が荒れるだけではなく、ノイズが混じって、全く別物になってしまうものだと思った。また、限りなく細分化すればアナログ音源とほぼ同等なものを再現できると思ったが、無駄にデータ量が大きくなってしまうとも思った。デジタルデータは、0と1の配列で全てを表す。誤りがあるとまったく違うものになってしまうので、訂正する必要がある。その訂正用のデータが案外バカにできない数字なのだとも思った。大量のデータをやり取りするようになるである、現将来においてデータ量を小さくしたり、回線・サーバーの強化により、通信速度を上げて行くということが一つの課題なのだと思った。
  • 音波の唸りの実験では、どのように機械を操作したら波形が観察できるのか自分で機械を触って実験しました。結果をもとに次はどの操作を試すのか考える力が身につきました。また、搬送波は何Hz差までが有効か調べる実験では予想を立てて実験を行い、結果に応じて予想を修正するという作業の意義が感じられました。さらに、音波で通信を行い、その問題点を考える実習では、多角的な視点から実験結果を考察する必要性がわかりました。
  • 電波を用いて、情報を伝達する技術について学んだ。波の正負によって、ビットが0か1に定められているのだと分かった。うねりの実験が面白かった。
  • 情報を電波を使って送信することが今回のテーマだった。電波の周波数は高すぎるためにその代わりに音波を使ってabcdefghという文字列を送ることに成功した。さて電波を使って情報を送るうえで避けられないのが情報の誤変換である。それを防ぐために送りたい情報に付け加えて、誤変換を発見し、復元するための識別コードを使っている。これはバーコードなどにも使われている技術で、細かい説明は省略するが4桁の情報を送る際には3桁のコードを用いて情報を復元する。ロジックを用いて、実生活に役立つ技術を開発していることが分かった。
  • 電波と音波という性質の異なる波の種類を応用して音波で信号を送ろうという点がおもしろいと思いました。また、低音質、高音質などがどのようにされているのかもわかりました。
  • 無線通信において三角関数、積分、複素数平面など、たくさんの数学の知識が使われていることを知りました。

2017年11月4日

  • 実施場所

    吉田キャンパス 総合研究9号館

  • 当日の講師

    廣本 正之 講師(情報学研究科 通信情報システム専攻 佐藤高史研究室)

  • チューター

    森田 俊平、中村 公暉、名倉 健太

  • 実習の内容

    計算機の仕組みについて学び、演習を通じ論理回路の基本を理解する。その場で回路を試作・テストできるICトレーナーという器具を使い、汎用ロジックICを用いて足し算を行う回路を設計・制作する。実際に回路を設計し、組み立てて動作させるという作業を通じ、計算機の基本的な構成を理解する。また、回路を意図した通りに動作させるために試行錯誤を繰り返す体験を通じ、ものづくりの難しさと楽しさを実感させる。

  • 電気電子工学_実習風景ロジックICを使ってブレッドボード上に加算器を組み立てる
  • 電気電子工学_実習風景製作した回路が正しく動作するかを確認中
  • 電気電子工学_実習風景完成した4ビット加算器

活動を通して学んだこと

  • 学校の情報の授業でコンピュータの歴史や仕組みの概要は習ったが、トランジスタが45nmと、とても小さく、またそのことにより、スマホやコンピュータには想像をはるかに超える数のトランジスタが使われていることがわかった。  実習では、論理回路を学び、加算器を作った。論理回路は、以前その理論を学んだことがあったので、今回も含め基本は押さえられた。しかし、実際に加算器を組み立てるとなると話は別だった、コードが煩雑になり、自分でもどのようになっているのかわからなくなってしまった。そこで大学生の方が、紙に今作っている回路の接続を書いてみたらどうか、とアドバイスしてくださった。すると、自分のミスに気づき、無事半加算器、全加算器を作ることができた。時間内に4bitまではできなかった、独力ではそこまでもたどり着かなかっただろう。頭で考えたものを、いきなり複雑なものに作り上げるのではなく、一度簡単なものに置き換えるということの大切さがわかった。また、単純な計算一つにこれだけの裏方の作業があるのだと身にしみて感じた。
  • 計算機や論理回路の基本的な仕組みを知ることができた。また、ロジックICと配線を組み合わせることで、4ビット加算器を作ることができたり、加算器をさらに改造することで4ビットカウンタが作れたりと基本の知識を組み合わせていくと応用的な装置も作成できると学びました。また、配線を考えていく上で、情報を元に整理し、順に理論立てて考えることの重要性や、準備段階として設計図を考えることの必要性も学びました。さらに、失敗した際に、まず原因を推測することで迅速に解明することができると実感できました。
  • 計算機の歴史や二進法、論理演算について学び、論理演算を用いて、半加算器と全加算器を作り計算機を作成した。
  • 電子回路の基本はトランジスタという半導体によるスイッチングによって入力から任意の出力を作ることだと分かった。 具体的に概要を説明すると入力が1の時1は0を、入力が尾の時に1を出力するCMOSと呼ばれる回路やその応用系をトランジスタの組み合わせによって作成し利用している。 そしてそれらを組み合わせれば、加算器を作ることができる。これまでに何度かブレッドボード上に並んだ配列というものをみたことがあったが、どこがどういう仕組みで計算ができるのかということはわからなかった。 だが今回実際に自分で加算器を作ったことでその原理を少し理解できたと思う。
  • トランジスタによるコンピュータの演算の仕方や、回路による大まかな信号の送り方が理解できました。
  • 身の回りにある様々な機械に組み込まれているコンピュータ(計算機)の基本的な計算方式が分かりました。

平成29年度 実施レポート

年度別の実施レポート