hirax.net::Keywords::「ソフトウェア」のブログ



1999-08-12[n年前へ]

不思議な品揃え 

パンティーププラザの未来

 下の写真はバンコクのパンティーププラザの内部である。丸井のビルの内部をラジオ会館の店子で置換しまくったようなビルである。いや、ラジオデパートのスケールを長さで10倍、面積で100倍にしたといった方がいいだろうか。

パンティーププラザの内部

 こういった電脳ビルに関しては詳しいサイトがたくさんあるのでここでは言及しない。

 私が興味を惹かれたのは、その品揃えの不思議さである。パンティーププラザ内には数多くの店がある。どの店も展示しているソフトウェアは技術者向けのソフトのコーナーがかなり広いのである。それが結構面白いのだ。展示しているソフトウェア自体はどこの店も対して変わらない。例えば、

  • AVS/Express Developer
  • MATLAB5.3
  • Mathematica4.0
  • 様々なCAD/EM Simulator
といったような種類のソフトが売り場の中で結構な面積をとっているのだ。とはいえ、せいぜい広くても1店の面積の1/10位ではあるが、こういったソフトウェアは日本の大きなソフトショップでも在庫を置いてすらないようなものばかりである。(言うまでもないがこういったソフトウェアは全て海賊版であり、1枚のCDが日本円にして400円位である。)

 もちろん、他の国では海賊版のソフトウェアに対する規制が厳しいため、売り場が縮小するとともに、売れ線のソフトのみが残ったというようなこともあるのだろう。(あるいは、売れ線のソフトの面積を広くするのが面倒で、全てのソフトをただ並べているのだろうか?)
 香港などでは、数年前はFDベースという形で技術的なソフトウェアの在庫が結構あった。しかし、今では技術的なソフトウェアはほんの片隅に残るだけである。現在は、ほとんどがゲームかオフィス・グラフィックス用のソフトウェアである。FDベースだった理由はCDをプレスで作成してしまうと、少数しか売れない技術ソフトウェアは利益が出ないからである。

 ただし、最近の技術ソフトウェアはFDベースでなくてCD-Rベースのものが多い。FDよりもCD-Rの方が安いし、本物がCDベースだとCD-Rでないと駄目だろう。しかし、CD-Rベースのソフトウェアを400円程で売っていると、利益が出るのか心配になってしまう位だ。

 いずれにせよ、パンティーププラザにこんなに技術ソフトがおいてある理由はよくわからないし、その倫理性についても難しい問題だと思う。ただ、私が興味があるのはこいうソフトウェアを買うのはどんな客であるのか、だ。 別に、客の倫理性に興味があるわけではない。素晴らしい道具を簡単に入手できる世界の未来に興味があるのだ。それに一時期タイの人達と一緒に働いていた時期があるので、なおさら気にかかってしまうのかもしれない。ハンバーガーと同じ値段で、こういった素晴らしいソフトウェアが入手できるパンティーププラザの未来はどうなるのだろうか?(ソフトウェアを製作している立場の人からすれば、たまったものではないのだろうが。)

と、ここまでで終わるつもりだったが、何故か手元にこんな画像が有る。

ナゾのメニュー画面

1枚のCDにBeatlesの全曲(当然歌詞も)が入っているのである。こんなCDがあったらいいなぁ、と思っていたのだが、あるもんなんだなぁ。ここらへんの曲はもう年月を経て、権利も消失してる(はず)だからいいんだよなぁ。だから、買ってもいいんだよなぁ(別に買ったといってるわけではないけど...)。あれ、"Iwill"が聞こえてきたけど、これはきっと夢なんだ...

1999-08-14[n年前へ]

年始は景気が悪いの法則 

株価・為替グラフ表示ソフトを作ろう

 自慢ではないが、私は経済には疎い。しかし、霞を食べて生きているわけではないので、勤務先の景気の行方は私の食生活を左右してしまう。その年の給料は年始に労使交渉の後に決まるのだが、何故か毎年その時期は勤務先の景気は悪いのである。当然、毎年不景気な労使交渉が行われることになる。

 「何故か毎年その時期は勤務先の景気は悪い」と書いたが、わかっている理由もある。例えば、その前年末に売れてない製品を売れたことにして前年の売上に押しこめてしまうから、次の年始は当然製品の売れ行きが下がるわけである。従って、給料を安く抑えるためには、労使交渉を年始に行うのがいいと思われる。

 そういうことはおいておいても、経済の勉強は少しはしなければならないだろう。こう思ったきっかけは、「今日の必ずトクする一言(http://www.tomoya.com/)」の

を読んだからである。株価変動グラフが簡単に見ることのできるサイトがあるなら、そういうデータを材料にして色々な解析を行ってみるのも面白いかもしれない。

 それでは、今回のサンプルには「カシオ計算機(株)」を使うことにしてみる。まずは、カシオ計算機の株価の最近一年間の変動を以下に示してみる。

カシオ計算機の株価の最近一年間の変動 (YAHOO提供のデータ)

 さて、これだけでは何がなんだかわからないし、カシオ計算機の特徴もわからない。

  • 他の会社の平均に対してカシオ計算機の特徴はどうか?
  • カシオ計算機の株価と相関があるパラメータは何か?
といったことを調べなければならないだろう。他にも調べなければいけないことは数多くあるのだろうが、経済のお勉強一日目の私にはこんなところが限界である。

 他の会社の平均を調べるためには、日経平均株価を見れば良いのだろう。そして、カシオ計算機のような輸出を主体とする製造業の場合は、円vsUS$為替が株価と極めて相関が高いことが多いので、日経平均株価と円vsUS$為替の変動を示してくれるサイトがあれば簡単に比較ができるだろう。例えば、そういった情報はYAHOOやASAHI..COMから得ることができる。

 しかし、大雑把に探した限りでは、日経平均株価と円vsUS$為替の変動を同時に表示してくれるサイトが見当たらなかった。そこで、日経平均株価と円vsUS$為替の一年間の変動を表示するソフトウェアEconomicを作成することにした(経済の勉強から離れてしまっている気もするが...)。

 プログラムの内容はごく簡単で、ASAHI.COMにアクセスして「日経平均株価」と「円vsUS$為替の変動」を示す画像を取得して、合成するだけである。今のところ、proxy対応にはしていないが、そうするのもごく簡単なので、気が向けばproxy対応にするつもりだ。
 また、動作のためにはSUSIEプラグインのJPEG対応プラグインを必要とするので「Susieの部屋」から適当なプラグインをダウンロードし、Economicプログラムと同じディレクトリか、システム、もしくはSUSIEアプリケーションのあるディレクトリに入れておく必要がある(経済の勉強をするのに、何故SUSIEプラグインの話になるのだろう? というツッコミは無しだ。)。Economicプログラムは以下からダウンロードできる。

 Ecomicの動作画面を以下に示す。ネットワーク環境が遅い場合には、起動に時間がかかるかもしれない。
Economicの動作画面

緑 : 円vsUS$為替
紫 : 日経平均株価:
 このグラフの中で、緑 は 円vsUS$為替であり、緑は日経平均株価である。それらが重なったところは白で示してある。このようなグラフと任意の企業の株価を比較することで、先の
  • 他の会社の平均に対してカシオ計算機の特徴はどうか?
  • カシオ計算機の株価と相関があるパラメータは何か?
というようなことを簡単に見ることができるだろう。

 それでは、このEconomicを用いて、カシオ計算機の株価の変動を見てみよう。

日経平均株価と円vsUS$為替とカシオ計算機の最近一年間の変動の比較(1999.08.14現在)
日経平均株価と円vsUS$為替
カシオ計算機の株価

 見比べてみると、カシオ計算機の株価は日経平均株価(左の紫の線で示してあるもの)とはあまり相関が無い。日経平均株価が右上がりで高くなっているのに対して、カシオ計算機の株価は最初に大きく低下した後に、低迷を続けている。

 それに対して、円vsUS$為替の変動(左の緑の線で示してあるもの)と見比べてみると、ほぼ同じであることがわかる。輸出を行っているメーカーはどうしてもこうなってしまう。例えば、1円円高になると為替で数十億円も損失が出たりするのである。素晴らしい製品を作るかどうかよりも、円高になるか円安になるかの方が重要であったりするのだ。しかも、(私の気のせいだとは思うが)いつも年始は円高で、そのため毎年給料が不景気になるような気もするのだ。困ったものである(私が)。

 さて、こういったプログラムは作るのが簡単な割に面白い(私としては)ので、色々と応用プログラムを作成して遊んでみるつもりである。そうして、いつか経済オンチを克服してみたいと思うのであった(経済の話なんかほとんど出てきてないような気もするが...)。

1999-09-05[n年前へ]

ACIIアートの秘密 

画像をASCII文字に変換するソフトを作ろう

ASCII文字で描かれたモナリザを初めて見たのは、まだ大型コンピューターしかなかった頃だ。当時、記憶媒体の紙テープをパンチした紙くずと、ラインプリンタから出力されたASCIIアートで遊んでいた。
 今回ASCIIアートを用いていくつか実験をしてみたかったので、画像をASCII文字に変換するソフトウェアを探してみた。例えば、

といったサイトのリンクを辿ってみた。しかし、探し方が悪かったのだろうが欲しい機能を持つソフトウェア(フォントに応じたガンマテーブルを構成できること)が見つからなかった(情報をお持ちの方はここからでも私に教えていただけるとうれしい)。そこで、しょうがないから自分で作ってみることにした。必要は発明の母だ。というわけで、父は私。

 子どもである作成したソフトウェアは以下だ。もちろん、フリーウェアだ。ただし、いつものごとくアルファ版の中のアルファ版なので、再配布は禁止である。ここからいくらでもダウンロードできるので、構わないだろう。

 さて、このソフトウェアは画像をASCII文字に変換して表示・保存することができる。変換の仕方は、
  1. 白背景に黒文字
  2. 黒背景に白文字
  3. 白背景に色文字
  4. 黒背景に色文字
という4種類ある。また、変換したものを保存するにも、
  1. Windows Bitmap形式
  2. Text形式
  3. Html形式
の3種類がある。Text形式で保存する場合には「白背景に黒文字に変換するモード」で保存される。それ以外の保存形式であれば、どの変換モードでも大丈夫である。
 画像を読みこむには標準ではWindowsBitmapのみであるが、Susieプラグインを用いれば、色々な画像形式に対応することができる。

 使用手順は以下の通りだ。

  1. image2asciiを起動する。
  2. OpenFileボタンを押して、画像を読みこむ。
  3. Fontボタンを押して、フォントを選択する。(このソフトは使用するフォントの濃度カーブを計測し、正確な画像再現を狙うのだ!!)
  4. 画像変換モードを選択する。
  5. ImageToAsciiボタンを押して、変換を行う。
  6. 必要であれば、SaveFileボタンから適当な形式で保存を行う。
何より、使ってみるのが一番早いと思う。

 動作画面例は、例えば以下のようなものだ。

image2asciiで画像を白背景に黒文字に変換した画面

 
image2asciiで画像を黒背景に白文字に変換した画面
image2asciiで画像を黒背景に色文字に変換した画面

image2asciiで画像を白背景に色文字に変換した画面

Text形式で保存した場合のサンプルはこんな感じだ

Html形式で保存した場合のサンプルも示しておく。白黒文字への変換モードであればテキスト形式で保存するのが良いと思う。白黒文字の場合にスペースが変換画像中に含まれていると、画像ずれが生じてしまうからだ。これも簡単に直せるのであるが、直すのは次回にしておく。慣れないプログラミングを一気にしたせいで疲れてしまったのだ。もしすぐに使いたい方は、エディターで適当に置換すれば良いと思う。

 さてさて、このプログラムを作成した理由は、これを用いて実験を多々行ってみたいからなのである。キーワードは、デバイス、ガンマ、安定性、逆問題、色空間...である。というわけで、続きは次回に...

1999-09-26[n年前へ]

デバイスドライバーは仮免 

ClearTypeの秘密

 昨年、COMDEX/Fall '98においてMicrosoftが発表した「ClearType」技術というものがある。液晶ディスプレイなどの表示の解像度をソフトウェアのみで向上させるという技術である。PCだけでなく、液晶を使った電子ブックなどをターゲットにしているという。(参照:http://www.zdnet.co.jp/news/9811/16/gates.html)

 技術の詳細については、「特許申請中」ということで、明らかにされていない。しかし、その技術について推論している人は数多くいる。例えば、

や、Gibson Research Corporationのといった所がある。中でも、The Technologyof Sub-Pixel Font RenderingからはFree & Clearというデモプログラムをダウンロードすることができる。
Free & Clearの動作画面(縮小後、JPEGに変換しているのでこの画面では効果はわからない)

 ビックリすることに、確かに効果があるのである。カラーシフティングによりシャッキリした文字になるのだ。しかも滑らかなのである。デジタル接続の液晶を用いている方は確認すると面白いと思う。

 もっとも、こういう画像はWEB上で納得するのは難しい。JPEGのような圧縮画像では、情報が完全には保存されず、意図した出力ができないからである。とりあえず、デジタル接続の液晶ディスプレイを使っている方はとにかく試してみると良い。目からウロコである。

 さて、この原理であるが、カラーシフトについては色々なところで説明してあるが、若干わかりにくい画像例が多い。そこで、自分流に解釈しなおして考えてみたい。そして、実験してみようと思う。

 まずは、右上から左下に走る黒字に白斜線を考えてみる。1ドット幅で、しかも、上から下へ行く間に1ドット右から左にずれるようなものである。液晶の1ドットはRGBが縦に並んでいる。例えば、

で計測した画像例だと、
液晶ディスプレイの拡大画面
という感じである。良く見ればRed,Green,Blueの順番で並んでいるのがわかるだろう。

 1ドット幅で、しかも、上から下へ行く間に1ドット右から左にずれる黒字に白い斜線を考えてみる。これはそのような斜線を拡大したものである。

1ドット幅で、しかも、上から下へ行く間に1ドット右から左にずれる斜線
従って画像幅は本来2ドットである。

 そのような斜線を液晶で描くと通常は下の左図のようになる。通常の処理が左で、カラーシフトを用いた処理が右である。通常の処理ではRGBの位置を同じものとして処理しているので、RGBそれぞれが同じように変化している。しかし、カラーシフトを用いた処理においては、RGBの各位置が異なっていることを考慮の上、処理を行ってみたものである。そのため、滑らかな斜線になっているのがわかると思う。

左が通常の処理、右はカラーシフト処理

 このように、デバイスの個性を把握した上できちんと生かしてやれば、デバイスの能力をもっと引き出すことができるわけだ。 個性の違いを越える世界というのは、個性を無視した世界とはまったく逆であり、個性を最大限理解して初めて個性の違いを超えることができるのだ。

 さて、効果を確認するために、そのようなハーフトーンパターンを作成してみた。ただし、ここで表示している画像はJPEGに変換してしまっているので、効果は現れない。また、本来見えるはずの画像とはかなり異なってしまっているので、各画像をクリックしてオリジナルのTIFファイルをダウンロードして確認して欲しい。

1ドット幅で、しかも、上から下へ行く間に1ドット右から左にずれる斜線ハーフトーン
クリックでオリジナルのTIFFファイルにリンクしている
ノーマル斜線
カラーシフトを用いた斜線

  さて、この画像ではわからないだろうが、TIFFファイルの方を見て頂くと、カラーシフトを用いた斜線ハーフトーンの方では、色模様が出現してしまっているのがわかると思う。それは、液晶のガンマ特性を考慮していないからである。

 このガンマ補正については、一般的に使われるガンマの意味だけでないものが含まれている。一言では簡単には説明しきれないので、説明は次の機会にする。Free&Crearでもそのガンマ特性を調整する機能がついている。白地に黒文字であるか、黒字に白文字であるかの違いがあることに注意すれば、その数字の意味がわかる。ここでは、その補正をしたものを示すだけにしておく。と、いっても、私が使用している液晶のガンマを考慮したものなので、一般的には役に立たないだろう。

上の画像をそれぞれガンマ補正したもの
ノーマル斜線(ガンマ補正後)
カラーシフトを用いた斜線(ガンマ補正後)

 あなたが目にしている画像では、画像ではガンマ補正した方が変に見えていると思う。それは、私とあなたの使っているデバイス(と視点)が異なるからである。ここでやったのと同じやり方で、あなたの液晶に合わせて(なおかつ、同じ視点で)やれば、きれいに出るはずだ。
 さて、この結果を私の液晶で見てみると、カラーシフトを用いた斜線(ガンマ補正後)の方ではきれいに斜線のハーフトーンが出ている。ただ、いくつか問題があるのだが、それは次回までの宿題だ。と、いってもヒントはすでに「できるかな?」中でも出現している。ごく最近の話題でも、だ。

 このカラーシフト技術は実に単純なアイデアである。しかし、これは実に面白いアイデアであると思う。効果が有る無しに関わらず、こういうネタは私は大好きである。ただ、こういう技術が日本のデバイス屋さんから出てこないことが少し残念だとは思う。デバイスもドライバーも両方作っているところにがんばって欲しいものだ。それまでは、「デバイスドライバーは仮免」といった所だろう。 .....うーん、ちょっと、強引かな。というわけで、何故か私の手元にはPalm-size PCであるCasio E-500があり、そして、久しぶりにVisualStudioをいじり始めるのであった。。

1999-12-06[n年前へ]

立体音感を考える 

バーチャルサウンドソフトウェアを作ってみよう



 立体感というものには何故か強く心惹かれるものがある。まして、それが人工的な立体感であるならば、なおさらである。それは、画像・映像であっても、音であっても同じだ。色覚なども同様なのだが、人間の感覚というものを人間自身の技術により再現できたりするのが、実に面白い。

 何より、自分が実感できるというのが良い。結果を自分で感じることができるというのは、素晴らしいと思う。よくソフト技術者などで、「もう少し目に見えるものが作りたい」という人がいるが、それと同じである。

 小・中学校などでも実感できる教材や授業というのがあれば素晴らしいと思う。最近のWEBを眺めていると、そういう先生方のグループも多いようだ。そういう先生は「えらいなぁ」とつくづく思う。今の学校の先生は、そういうことをすればするほど、仕事としては時間単価が下がってしまうのだろう。それでも、そういった先生方は、きっとそういうことは気にしてはいられないのだろう。ホントにエライ。

 さて、立体感を実現するソフトであるが、そういった技術には色々なモノがある。音響の立体感の実現を目指す技術に関しても、古くから数多い技術がある。そういったものを追求しているWEBも多々あり、
 「今日の必ずトクする一言(http://www.tomoya.com/)」の

 などはその最たるものである。ここのWEBマスターなどは聴覚の専門家でもあるので、こういう話題に惹かれるのは当然なのだろう。

 また、そういったものを実現しようとする製品は昔から掃いて捨てるほどある。最近の製品では、

などもそうである。(といっても、今回の話しはずいぶんと長い間塩漬けになっていたので、それほど最近ではなくなってしまったのが残念である。)

 私も出張などで新幹線などに乗っている際には、E-500などでヘッドホンで音楽を聴いていることが多い。そういう時には、先の「山本式スーパーバイノーラルコンペンセーター」などが欲しくなり、音の立体感などについて色々と考えてしまう。必要に迫られているせいか、立体音感については、私もとても興味を惹かれるのである。
 というわけで、「できるかな?」でも立体音響について考えてみたいと思う。といっても、考えるだけでは面白くない。それに「ナントカの考え休むに至り」ともいう。私が考えるだけでは、何にもならないし、しょうがない。色々と実験をして遊んでみたい。
 そのために、まずはいくつかの道具を作ってみることにした。

 今回、作成するのは、山本式バーチャルサウンドシステムソフトウェア(名付けてYVSSS。略称が長いので、以降YVS3と称することにする。)である。先の「今日の必ずトクする一言(http://www.tomoya.com/)」の一連の話しに出てくるそれである。スピーカーマトリックスの程度を小さくしたものである。

 バーチャルサウンドシステムソフトウェアというと仰々しいし、ものすごいソフトウェアに思えるかもしれないが、実はそんな大したモノではない。それどころか、実に簡単なモノである。実際には、Waveファイルを開いて、そのファイルの左チャンネル(L)、右チャンネル(R)に対して、

  • R'= R - 1/3L
  • L'= L - 1/3R
という処理をしてやるだけである。これが、どのような作用を持つか考えるのは、先に挙げた「山本式バーチャルサウンドシステム」のWEBを読めばわかるだろう。もちろん、本「できるかな?」的にも色々考えてみたいわけではあるが、それは次回以降に後回しである。今回は、YVS3を作成し、自分の耳でその効果を実感するだけである。

 ここに、今回作成したソフトを置いておく。いつものことであるが、完成度はアルファ版以下である。


 使い方を示しておく。まず、下が動作画面である。水平方向にスライダーがあるが、チャンネル同士の演算の係数を決めるものである。左端が0%であり、右端が100%である。

WaveMixPro(YVS3)の動作画面

 すなわち、スライダーが左端であれば、

  • R'= R - 0 L = R
  • L'= L- 0 R = L
となる。つまり、オリジナルそのままである。また、スライダーが右端であれば、
  • R'= R - L
  • L'= L- R
となる。差分を出力することになるわけだ。
 Load_Convertボタンを押して、WAVファイルを選択し、変換することができる。その際、オリジナルのファイルは"*.org"という名前で保存される。

  さて、このソフトを使って、

  • 種ともこのアルバム「感傷」から「はい、チーズ!」
  • THE POLICEのLive at the "Omni" Atlanta, Georgia During 1983 U.S.A Tourから"SoLonely"
を試聴してみた。「はい、チーズ!」は途中がLive録音であるし、"So Lonely"の方は完全にLive録音であるからだ。

 試聴のやりかたは、Cd2wav32.exeを使い、CDからWAVファイルにする。そして、WaveMixPro(YVS3)を使って、バーチャルサウンドシステム構築する。そして、それをヘッドホーンで試聴するわけだ。適当にチャンネル同士の演算の係数を変化させ、聴いてみた。果たして、立体感は増しているか?

 さて、試聴した結果であるが、「うーん。」という感じだ。
 係数を大きくすると、まるで「カラオケ製造器」である。ボーカルが消えるだけである。しかも、聴衆が頭の真ん中に居座っているような感じである。つまり、立体感がむしろなくなってしまっている。「何故、オマエらはオレの頭の真ん中で拍手をするのだ」、と言いたくなる。頭が変になりそうである。
 かといって、小さいとよく違いがわからない。困ったものである。

 さてさて、まだまだ第一回目ではあるが、前途多難の気配であるのが心配なところだ。



■Powered by yagm.net