日々の戯言


バックナンバー

1997年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
1998年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
1999年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2000年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2001年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2002年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2003年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2004年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2005年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2006年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2007年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2008年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2009年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2010年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2011年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2012年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2013年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2014年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2015年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2016年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2017年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2018年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2019年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2020年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2021年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2022年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
バックナンバー内のリンクは無保証です

3月1日(木) 火事と喧嘩

フレームは楽しいね〜。当事者になってか〜っとしてる時も楽しいけど、傍観者の時も凄く楽しい。(外道)

忙しい時期に発火して、関われないでいるうちに、ほぼ下火になってしまってるので、今更つつくのもアレだしここに書く。

動画配信で高レートと聞くと、CRL で研究されてる D1 over IP とか WIDE で研究されてる DV over IP とかを連想してしまうのだけど、これは私が特殊なのだろうか。

まあ、両方とも実験レベルのもので、当分民生レベルには降りてこないものだけど、でも、DV over IP の方は、ソース配布だから個人でもやろうと思えば利用できなくはないんだよね〜。

実際、WMV の 500 kbps は低レート向けで間違いないでしょう。上には 300 Mbps の D1 over IP という化け物がいるのだから。3桁違ってるし。

ソース読んだり規格読んだりしたわけじゃないので、かな〜り適当なこと書くけど、MS MPEG4 って、結局は MC+DCT なわけで(wavelet は MPEG4 では静止画のみで動画には使われてない)圧縮時にある程度のモスキートノイズが混入するのは許容する事にして、再生時にノイズ消しのフィルタ掛けて目立たなくしてるだけじゃんって印象を受けるのだけど……。

で、更にレートを下げるために、GOP をとてつもなく長くとって、キーフレームを少なくし、容量を下げてると。

WMV8 って、この再生時フィルタ改良して、更にノイズ入れれるようにしただけなんじゃないかな〜って気がするんだけど、違うのかな?


3月2日(金) 月姫

TYPE-MOON の月姫、ほぼ読了。楽しめた。すごくいい。

Leaf の「痕」とか好きだった人なんかにお奨め。京極夏彦作品とか好きな人にもお奨めかな。

ちょっと分量が多いので、一気にやろうとするとだれるかも知れない。けど……うん、ひょっとしたらそれでも耐えきれるかも。それだけの魅力のある文章だから。

何よりも素晴らしいのは、きちんと、世界とお話を与えてくれて、しかもゲームとして成立してる点。小説のでき損ないに堕していないのは、本当は当たり前のことのはずなのに、ひどく貴重。

私は、彼らの他の作品も見てみたくなった。イベントに出かけてまで入手してみようとは思わないけど、秋葉原に行ける場所に住んでいるのだから、委託販売が行われる限り、入手すべく努めるはず。


3月3日(土) 貧乏性

生協のコピーカードがまだ40度数ほど残っていたので、使い切るために大学の図書館にて資料をコピー。楠菊信・他「VLSI の為のアナログ技術」(1989, 共立出版)とか出口博一・田上雅照「プリント回路の EMC 設計」(1997, オーム社)とか。

いまいちデルタ・シグマ方式 A/D コンバータの原理が理解できてないのでその勉強と、デカップリングコンデンサについての知識を求めて。

生活には(仕事にも)絶対に必要ない知識なんだけど、知識欲を満たすためと戯言用のネタ補充として。そのうち A/D コンバータを4回ぐらいに分けてやる予定。コンデンサの方は、今までに入手した資料だとちょっと判らない点があるのでそれをクリアしないと書けない。

ひょっとしたら誤解してる人いるかもしれないのだけど、私は半田ごても持ってないし、テスターも持ってない、ましてやオシロスコープなんて買う金はないし、電気は嘘をつかないとか言ったりもしない一般人。ハード拠りの事については只の耳年間レベルなんで、時々嘘書くことがあるから鵜呑みにしないように。


3月5日(月) 秋葉原めぐり3時間コース

は非常に疲れるね〜。帰りはパーツの重みで腕が抜けそうになるし(貧弱)

固いパーツのみ選ぼうとしてたはずなのだけど、電源は SevenTeam で、CPU は P3-933 に、LAN は DEC-21140-AF を載せてるプラネックスの ENW-9501-F と、ここまでは良いのだけど、メインボードが GIGABYTE の GA-60XE (i815) で、予算が限界に達しつつあっためにオンボード VGA を使用することに決定。やはり CPU は Celeron で我慢して手堅く G450 辺りを狙うべきだったのだろうか。

まあ、i815 の VGA は XFree86 も 4.0 で対応してるはずだからあまり心配してはいないのだけど。あと、東芝の SD-M1502 はやはりアクセス時には五月蝿いね。高周波が非常に不快。

ディスプレイは三菱の RDF171H を選び、配送は2日後。でも、それまで何もしない訳には行かないので、他の方のディスプレイを間借りして OS のインストールと動作確認。

4月からの就職先でのバイト1日目はこのようにして終わりました。う〜ん、普通はもっと違うんだろうな〜。まあ、こういうの好きだから良いのだけど。


3月7日(水) 日常

9時帰宅、母から Word で目次を作るにはどうすればいいのという訳の判らない質問を受け、講義開始。やっと終了して開放されるのが1時。

あ〜、両親からパソコン教えてとかいわれた時に上手く回避する方法をだれか教えてください。

選びに選び抜いて買った「できる……」系を渡してみると「こんなのじゃ私の作りたい○×はできない」とほざき読もうともせず。

そのくせ「文字を大きくするにはどうしたらいいの」などと抜かしてくれる人にはどんな本がお奨めなのでしょうか?

口癖は「これさえできればいいの」で、法則から話そうとするととたんに詰まらなそうな顔をするのです。コピーと貼り付けの間に成り立つ法則すら理解しようとしてくれません。クリップボードはそんなに難しいですか?


3月8日(木) タイピングソフト

母は順調に Typing of the Dead(PC 版)にはまってくれたようなので一安心。どうやらチュートリアルモードで総合キーマスターまでは進んだらしい。最終テストで詰まってるみたいだけど。

え〜と、ToD は良いソフトなんだけど幾つか不満点がある。どうして US 配列のキーボードだと特殊キーで打てないのが出てくるのかな?

US 配列のキーボードの場合、右手キーマスターで嵌ってしまい、Alt+F4 で強制終了させるしかなくなるのが欠点。

あと、最後が「ん」で終わる文と、ナ行の音から始まる文が同時に表示されている場合、NN と打ち込んで「ん」と変換しようとすると妙なことになるのが気に食わない。学習結果も次回起動時には忘れてるし。

それ以外ではホント、文句のない、いいゲームなんだけどね。激打とは比べ物にもならないぐらい。


3月9日(金) クラッカーさんいらっしゃい

せっかく常時接続環境でグローバル IP アドレス が もらえるんだからというわけで、WEB サーバー を立ててみるテスト。

上り 256 kbps でしかもただの Windows 2000 + Apache なのであまりいじめないで欲しいのだけど、どんなもんなんだか判らないので、今日外からテストする予定。

これが使い物になるようなら、現在のアクセス量は 200 M/month 程度なんで夜逃げ先を急いで探す事もないかな〜と考えたり。その場合は Windows 2000 のままという訳には行かないだろうから、UNIX マシンでっち上げるかも。

◇■◇■◇■◇■◇

えーと、他に利用者が居ない状態とはいえ、大学からのアクセスで平均 10 k/sec で、たまに 5 k/sec に落ち込むことあり。

今のところ覗きに来てるのは1時間に1人ぐらいだけど、これが増えた場合にどうなるかが問題だよね。

あと、OCV から提供されてる IP アドレスは DHCP で動的に割り当てられたものなので、こちらで電源を落とさなくても、上流が工事しただけで変わる可能性があるのが面倒なところ。

一応、easy.to とかの転送アドレス利用しといた方が良いのかも。やっぱり自宅でサーバ立てるのは面倒だな。


3月11日(日) リハビリ

うーん、C のコード書くのは久しぶり。AUF を更新しました。某掲示板で要望が出たような気がする DCT-iDCT プラグインです。

ちょっと時間切れ気味だったので、予定していた機能を全部つけることはできませんでした。ホントは量子化行列変更すると圧縮後のサイズがどう変化するかも表示したかったのですけど、それに関しては今回は断念しました。

多分、スケールとかタイトルがついてるトラックバーの意味を判る人は少ないと思いますが、説明を書いてると明日になってしまうので、もう寝る事にします。明日帰宅してから、余裕があればなんか書くかもしれません。

……こんなことしてるぐらいなら、JAVA の本とか読んでた方がいいはずだったのだけどな〜。JSP とか Oracle8i とか CHTML とか。そのうち TOMCAT もインストールして遊んでおかねば。


3月13日(火) 午前様

教訓:無理はするものではない。気持ちよく酔えればいいのだけど、体質的に弱いのであまり楽しめないのが悲しいところ。

つうわけで、DCT-iDCT はバグ修正のみ。デバッグコード除き忘れるってのはかなり恥ずかしいので。

時間に追われてる時でも、一通りはテストしてからリリースするようにしようね。毎回そんなこと書いてる気がするけど。

■□■□■

むー、JSP での Bean の使い方が良く判らない。servlet の場合はまんま CGI と一緒だからまだ判りやすいのだけど、JSP って訳判らない。

もちっとサンプルと格闘する必要あり。


3月14日(水) 時間が欲しい

DCT-iDCT の新版はまだできてないです。今のところできてるのは UI だけです。つーか更にワケワカな設定項目が増えてます。請う御期待。

DCT-iDCT の設定画面

……こんなのでみんな誤魔化されてくれるのかな?

うー、土日ぐらいしかまとまった時間がとれないのって悲しいですね〜。


3月15日(木) 出し惜しみではなく

時間が無くて作れてないだけです。流石にバイト中に趣味 100% のコードいじる訳にはいかんので。

進捗状況ですが、一応 4:2:0 で MB 単位の(色差信号も含めた)DCT-iDCT は出来るようになりました。後はサイズをカウントして出力する関数(今は 0 を返すだけのスタブになってる)を書けば完成といったところです。何とか某掲示板でスレッドが2ページ目に行ってしまう前に完成させないといけないとあせってるとこです。

うーん、今ごろ気が付くのもアレなんですけど、これって MPEG エンコーダを半分作っちゃってるようなものなんですよね〜。動き検索のコード追加して、ヘッダをつけて出力できるようになれば、画質を云々しない状態では MPEG エンコーダが完成してしまうと……。なんかどこかで道を間違えたような気がしてきました。

あと、SSTP プラグインですが、0.3.3 が最新版です。0.3.4 も 0.4.0 も無いので探しても無駄ですよ〜。一応 SEND/1.4 に対応させるつもりはあるのですけど、全然手をつけてないです。本体が配布再開しないことには作っても仕方がないので。


3月16日(金) DCT-iDCT 0.2.0

ようやく完成。AUF に置いときました。えーと「420 だけじゃなくて 422 とか 444 は〜」とか「インタレース DCT にも対応しようよ〜」とか「可変長コードテーブルゼロ(Annex B14)にも対応しようよ〜」とかいう無茶&マニアックな注文は言わないよ〜にお願いします。

README も中途半端にしか書いてないんだよね。非線形量子化とかオルタネートスキャンとか聞いてそれだけで意味が判る人の場合こんなものは必要ないだろうし……。

あー週末は遊びたいんで、この程度で勘弁してください。MMX 対応? 高速化? んなもの必要ないでしょ。

そのうち気が向いたら README もちっと充実させようかとか思うけど、今はもう何もしたくないんです。(これでバグあって今日の 22:00 ぐらいに更新してたら笑うな〜)


3月17日(土) 結局作ってるし

一応こんな感じの画面にしようかと考えてる。皮だけ作って中身は全然完成してない DCT-iDCT 0.3.0 の話だけど。

結局インタレース DCT を追加。これはインタレース縞が出てるやつを DCT-iDCT に掛けるとやけにサイズが大きくなるけど、もしもインタレース DCT に対応したらどの程度容量が減るかというのを調べようと思ったから。

あと矢印つきのボタンが増えてるけど、これは量子化行列を変更するのが面倒にならないように。ちょっと変更してみようと思ったときに、簡単に元に戻せないと、面倒でやりたくなくなるだろうから。 (デフォルトボタンも付けた方がいいのかな?)

さて、明日中に完成してくれるだろうか……。今週みたいなことはしたくないからな〜。


3月18日(日) 物欲

何となく買いつづけてる "C Magazine" の4月号を眺めていたらちょっと気になる本を見つけてしまった。

「コンピュータグラフィックス理論と実践」つーのがそれ。James D. Foley, Andries van Dam, Steven K. Feiner, John F. Hughes "Computer Graphics: Principles and Practice" の翻訳らしい。

あー欲しいのだけど12000円は高いな。3/27 発売らしいけど、その日には買えないよな〜。

○★○★○

DCT-iDCT の 0.3.0 を AUF にて公開。インタレース DCT への対応と、量子化行列の編集に履歴機能を追加。後なんかつけといた方がいい機能ってあるのかな〜。

とりあえず自分の欲しかった機能は全部つけちゃったからあとはあまり更新するつもりないのだけど。

なんか欲しい機能があったら言って見て下さい。簡単そうだったらやりますし、難しそうなら断りますんで。


3月19日(月) シリアル・ママ

ピンク・フラミンゴとどちらにするか悩んだのだけど、シリアル・ママに決定。殺人トマトを利用する予定の昨年末以来さっぱりコードを書いてない某ソフトの内部名の話。

うん、これに決定するまでには深い葛藤があった。幾つもの候補が浮かんでは消えていったのだ。

最終候補に残ったのは「バトル・ヒーター」「ピンク・フラミンゴ」「シリアル・ママ」の3つだったのだけど、バトルヒーターは海外の方に元ネタが判らないと思われるので最終選考から落ち、結局より判りやすいシリアル・ママに決定してしまった。

一応シリアル・ママはメニューまでは完成してるのだけど、そこから先の見通しが立っていない。とりあえず次の目標は DIB イメージを窓の中に表示できるようにすることなんだけど、明日はメッセサンオーに10時を目標に行く予定なのでコードを書いている暇がない。

えーと、DCT-iDCT ですが、0.3.1 を AUF に置いときました。履歴の先頭にデフォルト量子化行列を必ず入れるようにしただけです。手抜きって素晴らしいですね〜。


3月20日(火) プラスディスク無事入手

メッセサンオー同人ソフト館で委託が始まった「月姫」のプラスディスクを無事入手。値段が値段なだけに永遠に委託販売されることはないだろうと半分諦めていただけに非常に嬉しい。

しかし行列こそできていなかったもののレジでの 400 円一点の流れ作業はなかなか怖いものがあった。レジ裏に箱積みであったから暫くはなくならないと思うけれども、どうしても入手したいという場合は急いだほうが良いかも。

本日の購入はこれのみ。何か のデベロッパーテスト版はまだダウンロードしていないのだけど、どうしようかな〜。作業に入るのは正式版出てからにしようかと考えてるのだけど。ほら、折角買ったプラスディスで遊んでみたいし。それぐらい良いよね。


3月21日(水) GUI は作ったけれど

醜い。DCT-iDCT 0.4.0 の話。ついでに言うとソースも破綻寸前までいっちゃっててかなり醜い。どれぐらい汚いかというと、これぐらい。

あーもちっとこう。美しい方法は無いものだろうか。外皮をつくっただけで続きをつくる意思が失われてしまった。残りはまた明日ということで。


3月22日(木) そーゆ方法もありか……

うーんテキストで出すか〜。なるほど、それでも良いんだよね。量子化行列と違って取り込む必要がないからパーサー作る必要もないし。

一番楽なのは printf() で出力することにして、起動時に aviutl > dct.txt とかしてもらうことなんだけど……。テキストファイルのサイズ、あっさり M 単位にいっちゃうけどそれでも良いかな(なワケない)

まーそれは妄想として、自前でやるとしたら、8x8 のエディットコントロール置いてるところを1つの広いメモコントロールで置き換えて、ってな話になるんだろうけど。……どーしよう。


3月23日(金) 究極手抜

「きゅ〜うきょく、む〜〜てき♪」……ではなくて。なんかそれでも良いというメールが入ってたので、DCT-iDCT 0.3.2 究極手抜版を作成。公開。

aviutl と同じフォルダに dct.txt というのと qdct.txt というのを作ります。720x480 の場合、一つが 4M 二つで 8M になるんで覚悟よろしく。

平均は出してません。MCU(最小圧縮単位 - 8x8)毎の DCT 係数出力です。今一つ平均からどうやって最適な量子化行列出すのか理解できてないんですよね〜。

どちらかというと、各係数毎の分散とか偏差とか、DCT-iDCT 後の原画像との差とかの方が重要な気がするんですけど、どんなもんでしょう。


3月24日(土) 平均の意味

DCT-iDCT 0.3.2 をちょっと弄って DCT 係数を一行で出力するようにして、Excel で平均を出してみた。結果が次の表。

777.8554 0.8196 1.2242 -1.1702 -0.4559 0.2643 -0.0210 0.0637
-1.0289 -0.0763 -0.0906 0.0784 -0.0341 0.0309 -0.0085 0.0089
-0.3996 -0.1078 0.0290 0.0728 0.1184 0.0163 0.0017 0.0194
-0.1127 -0.0064 0.0380 0.0051 0.0435 -0.0316 0.0040 0.0070
0.0164 -0.0465 0.0328 -0.0193 0.0658 0.0077 0.0144 -0.0047
0.0568 0.0885 -0.0086 -0.0381 0.0052 -0.0099 0.0104 0.0122
-0.0523 -0.0488 0.0198 0.0093 -0.0157 0.0143 0.0047 -0.0033
0.1188 -0.0085 0.0189 0.0458 0.0109 -0.0140 0.0123 0.2922

やっぱり平均だとなんも判らん気がする。それとも DC 成分以外はほとんど全部が -1 〜 1 の範囲に収まってるこれから何かを導き出すことができるのだろうか?

で、ついでだから係数の絶対値で平均を出してみると、こんなふうになる。

823.9372 35.5140 11.4756 6.2470 3.3599 1.7942 0.9353 0.7007
34.6600 13.9790 7.6059 4.3831 2.5958 1.2835 0.6604 0.4958
11.8251 7.9591 5.5233 3.5677 2.1189 1.0067 0.5494 0.4140
6.8211 4.7370 3.5543 2.4804 1.5227 0.7519 0.4437 0.3752
3.9246 3.0268 2.3427 1.6696 1.0335 0.5432 0.3683 0.3081
2.4840 2.0083 1.4869 1.1075 0.6783 0.4081 0.3101 0.3070
1.5336 1.2885 0.9800 0.6816 0.4856 0.3274 0.2785 0.2665
1.2341 0.8379 0.6683 0.4984 0.3914 0.3278 0.2753 0.4705

多少は低周波部分が高くなってるかなという傾向が出てくるけど、ここから量子化行列をどう決定するかというのは、また別問題。


3月25日(日) 標準偏差

確か Excel には統計関数もあったはずという訳で、DCT 係数の標準偏差を求めてみることにした。標準偏差はデータが平均を中央として左右にどの程度の範囲にばらけて存在してるか示す数値で、この値が大きいほど DCT 係数は多様な値を取っていることになる。

631.2492 81.7554 54.5605 43.3393 29.4559 18.5803 12.4343 9.1721
73.3530 27.5296 19.5055 14.6715 10.6738 7.3179 5.2768 3.9342
49.5222 20.1484 14.6388 11.0723 8.6137 5.8798 3.9445 2.8958
36.8902 16.0893 10.8595 8.5838 6.4019 4.6011 3.1358 2.3296
27.0988 11.7487 8.0198 6.3610 4.7444 3.5022 2.5436 1.8724
20.3869 9.6315 6.0100 4.8033 3.5802 2.4921 1.9325 1.5407
13.8789 6.3667 4.7405 3.3986 2.5028 1.7922 1.3410 1.1435
10.9303 5.0016 3.6074 2.5754 1.9328 1.4137 1.1190 0.9619

昨日の戯言で載せたテーブルとは別の画像をサンプルに使ってるので、直接、絶対値の平均と比較することはできない。ので、同じ画像を使った場合の絶対値の平均も出しておく。

805.4396 44.3881 28.5813 21.4396 14.0568 9.8092 6.9001 4.8610
34.2094 12.8040 8.8665 6.7186 5.0556 3.6083 2.6932 2.0579
22.3913 9.1906 6.4460 4.8404 3.8300 2.8371 2.0106 1.5075
16.8006 7.2710 4.9642 3.8964 2.9433 2.2164 1.6158 1.2206
11.9058 5.4444 3.8118 2.9989 2.2994 1.7425 1.2972 0.9808
9.1692 4.2915 2.8922 2.3164 1.7688 1.3194 0.9999 0.7574
6.2729 3.0254 2.2517 1.6697 1.2861 0.9600 0.7143 0.5721
4.7371 2.3624 1.7192 1.2793 0.9749 0.7340 0.5667 0.4583

多少の違いはあれ、大体似たような傾向になっている(標準偏差が絶対値の平均の約二倍)のは、標準偏差を求める式が次のような形だから。

1が標準偏差の式なのだけど、<x> というのは、x の平均の意味。だから標準偏差は、2乗の平均から平均の2乗を引いて、平方根をとったものになる。

ここで、平均が 0 の場合の式が2。で、3は絶対値の平均を表す式。2と3は、ルートが外に出てるか中に入ってるかの違いしかないから、平均が 0 と近似できるような場合には絶対値の平均と標準偏差が似た傾向を示す。

だから……絶対値の平均使っても良いのかもしれないけど、標準偏差を求めるのもあまりソースコードでの手間は変わらないから、厳密な計算をしたほうが良いはず。たぶん。


3月26日(月) 量子化行列

卒業式はやはり退屈なもの。祝辞の IT 革命連呼に耐えられず、式自体は途中退出。時間を潰してから遅刻して学位記を受け取り、ゼミの教授と少しお話してから謝恩会には出ずにお別れ。やっぱり私は付き合いが悪いらしい。

さて、昨日求めた DCT 係数の標準偏差から量子化行列を求める場合の話。まず単純に、量子化行列の値は標準偏差に逆比例するという仮定が成り立つとするならば……。最小の偏差を持つ係数が、最大の量子化行列値 255 を持つとして係数を決定することが出来て、量子化行列は次のようになる

8 3 4 6 8 13 20 27
3 9 13 17 23 34 46 62
5 12 17 22 28 42 62 85
7 15 23 29 38 53 78 105
9 21 31 39 52 70 96 131
12 25 41 51 69 98 127 159
18 39 52 72 98 137 183 214
22 49 68 95 127 173 219 255

低周波部分に 8 以下の数字があるのでかなり無駄な行列だけれども、まあそれなりに使える物なのかもしれない。この行列では標準偏差に量子化行列値が逆比例するものとしたけれども、標準偏差の平方根を使えばもっと MPEG 標準に近い量子化行列になるのかも。

試しに平方根に逆比例するとして係数を調整した量子化行列は次のような形になる。

8 16 20 22 27 33 41 48
17 27 33 38 44 53 63 73
21 32 38 43 49 60 73 85
24 36 44 49 57 67 81 95
28 42 51 57 66 77 90 105
32 46 59 66 76 91 104 116
39 57 66 78 91 108 125 135
44 65 76 90 104 121 136 147

ただ、私にはこれが正しい量子化行列の決定方法なのか自信が無い。時間があれば続きは明日に。


3月27日(火) 心理視覚効果

昨日の続き。昨日出した量子化行列では標準偏差から量子化行列を決定するに当たって一つの仮定を置いてる。

その仮定は「DCT 係数の標準偏差が大きいということは、画像の中にその周波数成分の情報が多く含まれているということであり、画質を左右する重要な情報であると判断できる。したがって、その周波数成分を良く再現するために、量子化行列値を小さくするべきである」というもの。

ちょっとグラフを出しながら説明してみる。

これは平均 0 で標準偏差が 50 の正規分布のグラフだけど、こういう分布を持つ周波数成分は画質に重要な情報だから量子化ステップを細かくしなけりゃいけなくて。

これは平均 0 で標準偏差が 5 の正規分布のグラフだけど、こういう分布を持つ周波数成分はあまり重要でないから量子化ステップを荒くしてもよい。

という仮定の下で決定された量子化行列な訳だ。

で、何が不安なのかというと、この仮定が本当に正しいのかどうか自信が無いのだ。「この仮定って証明されてるの〜」と言いたくなってくるわけ。

さらに言うなら、MP3 (MPEG Audio Layer-3) では MDCT をかけた後で、単純に小さな周波数成分を消してくだけじゃなく、まず最小可聴振幅(周波数によって変わる)以下の振幅しか持たない周波数成分を削った後で、マスカーによって消されてしまう周波数成分を削っていくという方法で情報量を削減している。これを心理聴覚効果演算とかいうのだけど……。

動画の場合も同じように、人の視覚特性を考慮して、例えば心理視覚効果とか呼ばれるものを考慮して、それで量子化行列を決定すべきじゃないのかな〜とか考えてしまったりもするわけ。

絶対にどこかで研究されてるはずだから、論文とか発見できれば読んでみたい。けど、日本語のはまず見つからないだろうし、英語だと何を検索キーにすればよいのやらさっぱり思い浮かばない。あー、卒研とかでこんな研究やった(やってる)人いないのかしらん。


3月28日(水) USB 充電

三洋の SSP-PD9(携帯 MP3/AAC/WMA プレイヤー)を買ってしまった。何故かというと、USB 充電可能の文字に惹かれたから。

うーん、CBD Type-G99 JPS の実現に向けて世の中は着々と動いているのだと考えてしまったりする今日この頃。やっぱり終わってるな。

多少充電に時間がかかる&通勤時に電車の中で使って会社の PC で充電しようとしたら USB ケーブルを持ち歩かなければいけないという欠点はあるものの、USB 充電可能というのはそれを補って余りある魅力を持つ。

これで単4電池ではなく、リチウムポリマー電池とか利用しててもっと薄型になってればな〜と、それがちょっと残念。軽くて十分胸ポケットに入れとけるのだけど、電池を入れる部分で厚みが結構あるから少し邪魔。

あとちょっと気になる点としては、ノンストップのユーロビートから CD 丸々一枚ぶっこ抜いてそのまま MP3 にエンコードした 56M の MP3 ファイルを再生してると、何故か 30 分過ぎた辺りで先頭に戻ってしまう(30 分以下の長さのファイルなら問題なく再生できてる)のだけど、これって仕様なのかしらん。

アクセスログ眺めてる限りでは三洋の方は見てないようなのでこんなところに書いても無駄なんだけど。


3月29日(木) JSP と日本語コード

A:JSP 1.1 の include で日本語を使うときにはどうすれば良いのですか?

B:日本語コードを出力する部分は全て <%= "日本語の文字列" %> のように JAVA のコードとして生成することにして、native2ascii を通しておきましょう。

A:それは面倒です。

B:では JSP1.2 を待ってください。

A:納期は6月です。

B:include を使うのを止めましょう。

■□■□■□■

A:log4j の SMTPAppender で日本語のメールを送るにはどうしたら良いのですか?

B:何故ログで日本語を使用する必要があるのですか?

A:log4j でメールが送れるのですから、どの道ログは必要になるのでついでにそれを使おうかと思ったのです。

B:JAVA でメールを送るのが目的ならば素直に JavaMail を使いましょう。その方が SMTPAppender を使うのより楽です。

A:じゃあログはどうやって取ればいいのですか?

B:log4j を使いなさい。ただし、log4j で普通のメールを送るのは諦めましょう。


3月30日(金) 日々是散財

トロハブを購入。机の上に置ける USB ハブならなんでも良かったはずなのだけど、つい何故かフラフラと手が伸びて。

うーんと、この程度のアイテムなら職場に持ち込んでも大丈夫だよね。いや、PC を机の下に押し込んだので USB の抜き差しが面倒になったので、それで USB ハブが欲しくなった訳だから。

ちょっと五月蝿いかもしれないけど、これぐらい良いよね。

えーと「図解 デジタルビデオ読本」はまだ入手できていない。今日帰りがけに紀伊国屋本店を覗いてみたけれども、4階の理工書コーナでは発見できず。3階のコンピュータ書籍売り場に置いてあるとも思えないし……。

明日神田まで足を伸ばして探してみる予定。


1997年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
1998年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
1999年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2000年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2001年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2002年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2003年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2004年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2005年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2006年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2007年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2008年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2009年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2010年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2011年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2012年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2013年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2014年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2015年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2016年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2017年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2018年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2019年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2020年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2021年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2022年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
バックナンバー内のリンクは無保証です

[TOP]