2010/09/05 08:29:07| nk: tex slide
\begin{itemize} \framesep=0pt %要素同士の間隔を0ptにする
\item[\ding{52}] foo %\itemのあとで[]を利用して要素の前に打つ点を変えられる
\item[] bar %点がいらない場合には[]と中身を空に
\end{itemize}\begin{list}{}{\leftmargin=1zw \itemsep=-4pt} %listは第3引数に設定を書ける。
\item[\ding{51}] foo
\item[] bar \\[5mm] %barとbooの間を5mm伸ばしたい際
\item boo
\end{list}\rput[tl](.5,4){\FS{10}\Sparbox{3cm}{%
... contents }}rput,FS,Sparboxの順で書く(FSの第2引数の{}がいらなくなる。)
parbox内でarraystretch,arraycolsepを利用したtabular環境を作ると良い。
\rput[tl](5.2,7){\psframebox{\FS{10}\parbox{5.5cm}{\MC% 明朝体にしている。
\def\arraystretch{2.8}% %%要素間の行間の拡大率の設定
\arraycolsep=0pt% %%列間の幅の設定(横)
\begin{tabular}{cp{.7cm}c}
a & b & c \\
x & y & z
\end{tabular}}}}tabularのプリアンブルにはc,l,r(center,left,right)の他に
p(p{LEN}でLENの長さのparboxを作成)がある。長い説明文が含まれる場合などに用いると良い。
\FSが12以上のところで\SBを使っていた。
SBの実体はxmag,ymag方向にscaleboxするマクロ。
\Sparbox環境の中では\SBは使っていない。(SparboxのSはSBのS)
((peace o 44) (cross x 56) (pen p 48) (arrow a 220) (heartmark H 170) (exclamation E 162))
{color:gray} ここは推測
o,xでpeaceとcrossは正解/不正解のような対比の際に使う
p,aはpen,arrowの先頭文字、鉛筆と矢印から連想するものに使う
H,Eはハートと感嘆符。大文字なことから特別な用途に使う。(感情表現っぽいものを連想させる)
\def\leftp{\raisebox{-3mm}{\includegraphics[bb=0 0 200 200,clip,width=1cm]{#1}}}%includegraphicsにbbを指定することでcliping(画像を切り出すこと)できる
画像位置を上下に上げ下げしたい場合には\raiseboxを使う。(正で上、負で下)
2010/09/05 05:10:53| RHa:
To: nk
やはり色の選択が悪いなぁ。
ちょっとnkのスライド直に修正させてもらいました。
To: all
あと、フォントの大きさですが、このスライドなら、デフォルトを14ptに設定していますが、10pt未満は絶対に
使わないでください。基本的には14ptと12pt、10ptですらもうギリギリの選択肢です。
みんなそうですが、文字幅、文字間隔、スライド上ではやや間伸びした感じになってしまいます。だから、
\SB とか \Sparbox を使ってください。徹底的に直しますよ。
それと、もう遅いかもしれないけど、rputばかりで配置すれば、気違いのように整形が大変です。スライドだろ
うが、これはLaTeXのシステムですよ。 \parbox とか tabular 環境 だとか、 list 環境があるんですか
ら、そういうものを使うんですよ。
僕の見本からぜひ学んでください。
``“view source” method of programming enables the community to learn from each other’’でしょ>nk
まだみんなのスライドは、最終形ではありませんよ。細かい制御を入れても修正ばかりになりますよ。
2010/09/05 03:42:02| RHa: (Re: 2010/09/05 01:13:28| nk)
本日最後寝る前に。
僕等には、日常仕様と学会仕様と論文仕様があります。日常仕様では、人格も能力も全てを認めているのですよ。
ただし、学会仕様は学会の流儀に準じてもらわないと困るのです。「具体性」、「資料の明確さ」などはそのご
く基本です。そして、僕等が論文を書くことができたときには、論文仕様になっているはずです。あらゆる反証、
反例の可能性を排除して、全ての主観を拭い捨て、根拠となる国内外の既出の知見を全て引用し、緻密な実験結
果を収集して客観性を貫かなければいけません。
論文仕様とまでは言わずとも、だからこそ学会は覚悟をしてもらわなければいけないのです。念のために言って
おきますが、僕は金沢工大基準とか北陸基準とかがあったとしてもそんなものは無視します。全国基準もしくは
国際基準しかもちません。さて、僕等が今持っていないもう一つの仕様があります。職業仕様です。経済活動に
対する報酬で生きていく仕様です。学会仕様0.2+商業的能力0.8くらいが求められるのではないかと僕は思いま
す。
早く学会が終わればいいのにね。そうしたら日常仕様にひとまず戻りますよ。戻りたいですよ、僕だって。
2010/09/05 03:14:39| RHa: (Re: 2010/09/05 01:25:49| ym)
この限りではありませんが、偉大な数学者・哲学者であるラッセルは、生涯最後は小学校の教育に尽力しました。
当時の貧しい教育環境を憂えて、世界各地でフリースクールが創立されていった時代です。
フリースクールの最も代表的なものはニールの創立したサマーヒル学校です。世界でもっとも自由な学校という
教育スローガンを掲げて作られたのです。授業出席を一切強制しない、生徒がみな教師と対等の一票の決定権を
もつ。すごい思想です。
それはともかくとして、ラッセルのような偉大な科学者がなぜ小学校の教育を。そりゃ、恵まれた学者生活を過
ごした人は貧しい教育を憂うのです。貧しい教育は貧しい国を作りますからね。
もちろん、そういうラッセルは小学生に科学を教えるのがすごくうまかったと言われています。そう、よい科学
者はどんな科学だって、小学生にすら教えることができるのです。
僕も学生時代、よく言われました。僕は発表がとても下手でしたから。目の前に小学生がいると考えて、説明し
てみろ!とよく怒鳴られたものです。
2010/09/05 02:28:05| RHa:
To: nk
多分effectとaction、僕はこうであるべきだと思うんです。
raw image と active view との間に、effect filter のレイヤーが必要ではないかと。
ちょっと絵を描いてみました。
この絵にするんだったら、タイトルも変えないとね。修正。
ここまでスライド作り込んだら、ほんとにそのソフトウェアがあるように思えてきませんか?
具体化が進んだ証拠なんですよ。
ないものをあるように見せるために必死。必死にあるように見せかけると、なかったものがあるようになる、錯
覚。そして頭にこびりついて、作らないでいられなくなる。そうだといいですよね。必死になる値打ちあります
よね。そう思いませんか?
2010/09/05 01:37:48| 高橋: (Re: 2010/09/05 01:29:39| nk)
オーケー。adhocな変数は理解した。後は、もしその言葉の説明するなら、今のやりとりの簡略版を言葉にする
なり、絵にすればいいんじゃないかと思う。なるほど、pslineの件はそこにかかってくるのか……
やっぱり説明って大変だな。今回はされる側だった訳だけれど。こうして互いに互いの意見を交わさたからいい
けれど、それが出来ない状況で具体的に説明するって、本当はどれだけ大変なことなんだろう。
2010/09/05 01:29:39| nk: (Re: 2010/09/05 01:25:17| 高橋)
そうですそうです。
bq. adhocな変数 というのは、最も狭義には関数実行時のパラメータです。
2010/09/05 01:25:49| ym: (2010/09/04 23:00:17| nk)
ちょっと的外れな話になってしまいそうなので、nonsenseで。
説明をするときに一番重要なのは、説明する対象がどのような人物か理解すること。
理解度であったり、持っている知識であったり、立場であったり。
例えば極端ですけれど、ある事がらを小学生に説明する時には
どうしたら説明したらよいだろうかと考えてみる。
まず、言葉を選ばなければならない。
小学生に分かりやすいような言葉で。
抽象的なことは理解できない。
だから必然的に具体的な例をださなければならない。
長い説明は飽きさせてしまう。
だから、簡潔に説明しなければならない。
教育者や科学者に求められる能力はそういったことかもしれない。
2010/09/05 01:25:17| 高橋: (Re: 2010/09/05 01:07:20| nk)
ああ、やっとイメージが出来た。つまり、pslineにわたす座標の引数が、ここで言うadhocな変数なわけだ。
2010/09/05 01:13:28| nk: (Re: 2010/09/05 00:42:28| RHa)
了解しました。RADのスライドも含めてslide.texにmergeします。
今回の返答はとてもうれしかったです。
少しだけ認められたような気がしました。(*褒められる*と*認められる*
は大きく異なる。褒められるは単なるpositiveな反応が帰ってきただけのように
感じるけれど、認められるというのは*入りたい組織のような何かの*一員になれた
ようなうれしさがある。)
2010/09/05 01:07:20| nk: (Re: 2010/09/05 00:59:52| 高橋)
なかなか人に伝えるは大変。
adhocな変数という言葉をもう一度(今度は短く)説明しようとすると、「ある特定の環境
でのみ機能すれば十分な処理に対して、その特定の環境でのみ正しく動作するよう調整
する変数」ということです。
nslineはnodeの移動に対して不変に意味が定義できます。一方pslineはnodeの移動に対して
可変になってしまいます。したがって、ある特定の環境(nodeA,nodeBの位置が定まっていて、
そこから動くことのない状態)の中で機能するpslineの記述というのが「adhocな変数の調整
が完了したpslineを利用した記述」というような意味です。
2010/09/05 00:59:52| 高橋: (Re: 2010/09/05 00:04:48| nk)
偉そうなことを言っていきます。……怒んないでね。
結論から言うと、要するに『画像の編集ではなく、画像を編集する道具の微調整』がadhocな変数のチューニン
グの意味なのかな、という理解。(所詮、俺の理解力なので間違ってたらごめん)
まず、adhocの『意味』は分かった。言葉のイメージはつかめた。ただ、それが今回の発表とどう繋がるかまで
は最初はわからない。
次、pslineとnclineの例。2つの違いは分かりやすい説明。
その後の画像処理、家の話なんかはよくよく噛み砕いていかないと何が言いたいかが見えてこない。説明を理解
する上でヒントになったのは下から2段落目の『例えば、ここで"家のような"〜adhocな変数です』の部分。ただ
、これを一見しただけだとやっぱり分からない。少し考える時間を要して、やっと解釈した結論が上記のもの。
理解があっていないとまるで見当違いな話なんだけれど、下から2段落目を解釈するのに俺が色々付け加えた結果
どういう文章になるかと言うと、
たとえば、ここで"家のようなもの"を認識させるために、単に「ある大きさの四角形」を認識するメカニズムを
利用するとしたら、その状況に合わせて「ある大きさ」とは「どの程度の大きさの四角形であるのか」という設
定をする必要がメカニズムの摘要に必要になる。この画像編集のメカニズムの持つパラメータが画像処理におけ
るadhocな変数である。
こんな感じ。俺もいつもそうだけど、冗長なのが嫌。でもそれは言うまでもないことでもあるかもしれないし、
ほんとは分かってないから言えないだけかもしれない。でも、こうして冗長な説明をしないと何があれば具体的
な説明になるのかが、俺には分からない。それは、俺が説明対象の本質をほんとの意味では理解していないから
だと思う。
具体的なのは俺も苦手。だから、どうすればいいかを考えてみるけれど、とにかく冗長でない表現を最初から使
わないのが大事なんじゃないかと思う。書いてみて、それが冗長なら削る。RHa風に言うなら、無駄をたくさん
する。ってことになるんだろうか。
あれ?ものわかりの悪い相手に想定され……たわけではないよ、な……?多分……
2010/09/05 00:42:28| RHa:
To: nk
今、nkのスライドを確認。
「実装:エディタと viewer の通信」
「実装:通信の例 (カーソル位置の色を取得)」
の連続的な感じ。これなら、とてもよく分かるじゃないですか。
nkは英語で書くときも動詞形なのですね。
その調子。
コメント
2010/09/05 00:24:27| RHa:
To: nk
スライド一枚追加。PVとリビジョンシステムの関連付け。
使っちゃった。setopacityalpha。ちょっとアクションとアクションチックなスライドの遷移が
あるので、一部スライドを移動しました。
2010/09/05 00:13:16| RHa: (Re: 2010/09/04 23:00:17| nk)
一つ言えることは、nkの書くプログラムに対するみんなの反応を見る。
よい反応を見せる(例えば使ってみたよという反応)こともあれば、そうでないこともある。前者の場合にはnkが
使い方を説明しているからそうなる。そうでない場合には、使いすらしない、その結果、チャットの中にレスポ
ンスが返ってこない。他の人もそうかもしれないけれど、僕は何とかレスポンスしようとして、一応動かそうと
はしてみるけれど、…
さて、簡単です。常に仕様書を書くのです。
例えば、用意したオプションを並べると、
その時点で、コーディング時に気づかなかったけど文章にして気づく必要なオプションがあることがわかる。
他人も、それならば、こんなオプションも追加してよ。とリクエストをする。
些細なものであっても、人に使ってもらえるものを目標にコーディングをする。そして人が求めているのはnkの
書いたコードではなくて、その説明書であることを認識する。そんなのつまらない、そうなんです。でも、悲し
いけどそれしか他人には必要ないんです。
他人に使ってもらおうとコーディングしているわけじゃない、と言うかもしれませんが、…、なら、…
2010/09/05 00:12:57| 高橋: (Re: 2010/09/05 00:04:48| nk)
ちょい待ってて。その説明を、個人的に整理してみる。
2010/09/05 00:04:48| nk: (Re: 2010/09/04 22:59:09| 高橋)
adhocな変数 の意味について説明してみる。
adhoc をまず「その場しのぎのもの、場当たり的なもの」という意味で用いました。
「その場しのぎ」のということはある特定の場面には効果的ではあるものの、
その特定の場面から少しでも異なる場面では上手くいかないということです。
この表現を利用した理由を考えてみるに、プログラムのバグに対する返信で「adhocな修正」
という言葉が使われていたことからです。
pstricksのpslineとnclineを考えてみてください。
nodeAからnodeBに線を引くことを考えます。
nclineはnodeとnodeを連結して線を描く関数(マクロ)です。
したがって、「nodeAとnodeBを結ぶ線を引いてください」という命令に置き換えられます。
この時、nodeAあるいはnodeBの位置を移動することがあってもnclineは意図通り動作します。
一方、pslineについて考えてみましょう。
pslineは始点と終点の座標を指定して線を描く関数です。
したがって、「座標(x0,y0)から座標(x1,y1)まで線を引いてください」という命令に置き換えられます。
この時、直接nodeA,Bと意味が結びついていないので、nodeAの位置を移動した場合には、
もちろん、見当違いなところに線を引いてしまいます。nodeAとnodeBを正しく線で結ぶには、
pslineに渡す引数を修正しなくてはなりません。
このように、nclineは``node’’という概念を利用することでノード間の接続を表せました。
一方で、画像処理は実際のところ生のバイト列を触っているに過ぎないため、概念ベースで命令を表す
ことができません。したがって、基本的には常にpslineと同様に実行時に数値を指定して利用することに
なります。ここで「行ないたい目的に対してのみ上手く動作するその場しのぎの処理」に対応する処理を
行なおうと、関数の引数を調整することを" adhocな変数のチューニング "と表しました。多くのパラメータチューニング
もまた、 adhocな変数のチューニング であることが多いのですが、単なるパラメータチューニングとの違いは、
特定の場面にのみ上手く動作する、その場しのぎのための処理の作成という意味合いを加味したかったのです。
また、概念ベースで命令を表すことできないというのは言い過ぎで、それをを可能にしようとする試みが
画像認識ということになります。
もし、仮に"家"という概念を機械が把握できるのだとしたら"家"同士を線で結ぶなども簡単に出来ます。
ところが、"家"という概念を正確に記述する術が見出せていないため"家のようなもの"を探すことになります。
"家のようなもの"を探す際には、状況によってその処理を簡素なものにすることができそうです。
例えば斜めから取ったアングルの絵が存在し無かったり、全て玄関を正面から写した写真だったとしたら、
それを解くための処理はとても簡単になりますね。
特に定点観察のような利用する範囲が限られたようなものであれば、全ての"家"に対応する完璧な認識メカニズム
を作成するのではなく、もっと単純な認識メカニズムで十分に機能しそうです。
ここで、画像処理のプロセスを想いだしてみてください。例えば、写真の中の"家"を真っ黒に塗りつぶす
という処理を考えて見ましょう。"家"という概念を用いることが出来れば、「"家"を黒で塗る」で充分ですが、
概念を用いて記述することができないわけですから、"家のようなもの"を認識する方法が必要になってきます。
例えば、ここで"家のようなもの"を単に「ある大きさの四角形」を認識するメカニズムを利用したとしたら、
「どの程度の大きさの四角形であるのか」設定する必要があります。これが画像処理に置ける adhocな変数 です。
さらに広義には、(というよりは個人的には)関数と値の違いがない世界に住んでいることを望むので、
"家のようなものを認識するメカニズム"それ自体も、画像処理においては変数であるように見えて仕方がありません。
その視点に立てば、「どの認識メカニズムを用いるか?最適なアルゴリズムを選択する」という行為自体も
パラメータチューニングに他なりません。このように、ある特定の利用環境においてのみ正しく動作する、その場限り
の場当たり的なアルゴリズムの決定自体も" adhocな変数の調整 "と呼んでいました。
2010/09/04 23:00:17| nk: 具体的な事柄が苦手
以前も同様のことをnonsenseに書いていた。
こういうことを発見するとある投稿の近辺の発言を見たくなったりする
2010/04/23 18:05:30| nk:
今日分かった自分に足りないものは特殊化(specialize)かもしれない。
: 数学などの例を取れば不定積分ができたことで満足してしまっていたのかもしれない。
だから、解のようなものが収束しきらない。(考えや行動が曖昧なまま)
: まだCという不定定数があるというのに。
問題点を認識はしているのだけれど克服できていない。
考えが抽象的な状態(悪い意味)で満足してしまいその先を考えようとしていない。
例えば「ある点の移動」は通常ベクトルで表せて、正確な移動を表すには始点の座標も必要。
一方自分は、単に移動の方向を見出しただけで満足してしまう。
実際のところは、移動の始点とベクトル長さも知る必要があるにも関わらずその先を考えようとしない。
自分の思考は、ある点の移動について考えるのではなく、考えていた対象に似た関係のものを探すことに向いて
しまう。 DFSに対するBFS(幅優先探索)と言えば聞こえが良いが、実際のところは、途中で考える
ことを放棄してしまっているだけ。実際のところ、何かと何かに関連を見出したとしても、その関連を具体化し
なくては実際的な力は何も得られない。
じゃあ、始点とベクトルの向きとベクトルの大きさが分かったら、その「点の移動」を理解したかと言えばそんなことはない。
例えばどのように移動したかということについては何にも理解していない。
本当は、まだまだ深く考えることがあるはずなのに途中で考えることを放棄してしまう。
問題の認識と解決方法を見つけ出すことと解決は異なる。
2010/09/04 22:59:09| 高橋: (Re: 2010/09/04 22:01:23| 高橋)
あまり有用でないかもしれないけれど。
そもそもこの話題は、講義の課題をするときに「こんなのあったら便利だね」なんて言ってたもの。その時点で
は、きっと具体的に「どういう使い方をしたい」、「どういう機能があれば実現できるか」というものがnkの中
にはあったかもしれない。
物事を具体的に、他人にわかりやすくというのは、どういうことなのかまだ良く分からない。ただ、説明して相
手が説明対象をイメージできなければ、それは具体性に欠けた説明と言って良いとは思っている。
「分かるよね?」や「分かりなさい」のスタンスでは得られない理解。「分かりますか?」が重要な領域。そんな
風に考えている。説明は相手の理解を確認する質問でもある。と言えばいいのか。
たとえば、ある電気店で客に店員がクーラーの説明をしたとする。
「このクーラーはxxというメーカーのxxxxという部品を使っていて、エネルギー消費がわずかです」
「このクーラーはエネルギー変換効率が良く、消費エネルギーは従来の60%です」
どちらも、クーラーの消費電力の低さを説明しているけれど、言葉の分かりやすさ、具体的な数値があって、こ
の例で言えば明らかに下が分かりやすい。部品のメーカーや名称は確かに具体的なんだけれど、前提知識がない
であろう客にとっては意味不明で何もイメージできない。細かいことが具体的であるとは限らない。
で。ここまでは先の話の続き。ここから、nkの話題。
実際には説明するのかも知れないし、それしかないのかもしれないし、揚げ足とりかもしれないけれど、言葉が
直感的には分からないものが多い。
たとえば、p.6の対話的環境なんて言葉。これくらいなら、学会の聴衆は理解してくれるかもしれない。ただ、
そういうイメージがすぐにつかみにくい言葉をどうするかという問題に関して思うところがあるので記載。
対話的環境って言えば、『何か操作したら、その結果が何かしらの形ですぐに分かるんだな』と俺は連想する。
でも、何と何が対話しているのかがあると、一目でわかりやすくなる気がする。
ついでに。
でも、この言葉を知らない人は?『対話』という言葉から『会話』を連想するかもしれない。じゃあ、『会話的
な環境』って何?ってことになる。それは『何か言えば答えが返ってくるように、何かすれば何か反応がある』
という説明につながる。ここまで言えば、そこそこ具体的かと思う。
ずっと悩んでいる『adhocな変数』という言葉。どうすることにしたかはわからないけれど、それを具体的に説
明しようとしてみよう。誰かものわかりの悪い相手を想定して、その人に説明する文章を書いてみよう。そこ
にはその名が表す体が出てくるはず。そこからわかりやすくまとめることが出来れば、使うのに説明が必要な不
便な言葉に悩まなくて済むんじゃないかと思う。
2010/09/04 22:08:01| RHa:
具体的、という例で僕が引き合いに出したいものがあります。
(1) レオナルド・ダ・ビンチが15世紀に描いた現代でいうところのヘリコプターはじめ空飛ぶ機械類。
Davinci studio
こういう絵を見ると感動しますよね。15世紀にこれだけの荒唐無稽の可能性を具体的に絵におこしたのですから。
(2) 19世紀、チャールズ・バベジが考案した計算機。スチーム、すなわち蒸気機関で動く計算機です。当時の
技術ではバベジの描いた「階差機械」を作り出すことはできませんでした。下は1826年の論文です。これが世界
で考案された初めてのコンピュータでしょう。有名ですよね。1830年代にはこれが「解析機械」へと発展してい
きました。
on a model of expressing by signs the action of machinery
第2部 コンピューター開発史
虚しい具体化です。誰も作れないのですから。
そうでしょうか。バベジ生誕200年(1991年)を記念して、ロンドンの科学博物館がバベジ自身の設計図通りに階差
機関を作ることに成功したのです。もちろん記念事業としてですが、その総製作費は約2億円。発表から165年か
かったわけです。でもそれがとことん具体的だったので、後世の技術で、寸分違わずその物を作り出すことがで
きたのです。
具体・具象とは、それだけの力をもっているのです。
2010/09/04 22:01:23| 高橋: (Re: 2010/09/04 21:28:44| RHa)
まだまだ理解が足りないかもしれませんが、その3点は肝に銘じておきます。
nkのスライドについては、何か意見があり次第かきこみます。
2010/09/04 21:28:44| RHa:
高橋君と町田君へ、
nkの発表内容は、nk自身の試行錯誤のプロセスがまだ熟していない、でもそれだけ難しいものであるということ
は分かるでしょう。
processingを引き合いにしたことはCommunityとか伝搬ではなく、すぐ下のPost:にもあるように、nkの作るもの
の特徴を際立たせたという点において、ラッキーでした。本人が自覚しているのかが心配ですが。
僕がnkに望むことは、以下の点です。
厳しいようだけど、世の中は、抽象を論じる前に具象を論じてほしい。他人に理解されなければ何にもならない。
ということを肝に銘じてほしいと思います。
いいですか。これをあえてstとymに投げます。みんなにもよく考えて欲しいことなのです。特に第三の点に関し
ては、いつかどこかで妥協してませんか?さて、二人には、
(Post: 2010/09/04 20:59:45| RHa)や(Post: 2010/09/04 12:55:02| nk)を読んでの意見を述べてください。そし
て、nkにアドバイスをしてください。みんながnkにとっての一番身近な 他人 なのです。もはや、僕は共同ス
ライド製作者としてnkと純粋に他人ではありません。助けてください。助けてあげてください。
というわけで、これをstとymに投げたのです。よろしく。
2010/09/04 20:59:45| RHa: (Re: 2010/09/04 12:55:02| nk)
[重要]
この発表は、画像処理の自分哲学を論じるものではありません。
現在のベースとなっている技術に何を加えたいのか。そしてその結果どういうものを作るのか。
Algorithm Development System := Processing + NK system NKsystem := IDE + ITS + PV + VC Processing.member?(IDE) => false Processing.member?(ITS) => false Processing.member?(PV) => false # これをじっくり考えてみてください。 Processing.member?(CV) => false
ちなみに、メモを見て僕の感想
>観察に当たるのがPV
… グラフィクスビューワーならなんでも観察を支援しているわけです。そんなの当たり前ですよ。
>行動にあたるのがeffect/action
… 行動は観察行動、デバッギング行動、プログラムの実行、何だって行動なんですよ。そこを明確にしなけれ
ばいけないのに、「行動」なんていう大きな言葉で何か狭い世界のことを言い当てていない。effect/actionなら、
それだって、それなりに全てのグラフィクスビューワーがもっているものでしょう。OpenGLの座標変換はeffect、
シェーディングもeffect、何らかの破壊的な処理はアクションなのですから。
>順化のプロセス…
メモ過ぎて何をメモっているのかすら分かりません。
>試行錯誤の繰り返しにあたるのがVC
そうですよね。processingにはないですよね。
processingは素晴らしい。その「メディアアート学習のソフトウェア」、「メディアアート制作のソフトウェア」
としての地位は簡単には揺るがないものでしょう。それだけの素晴らしいコンセプトを世に提供した。だからそ
のアイディアは「踏襲したい」、そして「アルゴリズム開発のソフトウェア」へ発展させたい。なら、
processingには「何が足りなくて、アルゴリズム開発に物足りないのか、を突き止めた。これだ、四つのモジュー
ルだ。だから、そのコンセプトを踏まえて作った。
これが僕の想定するストーリーです。僕には感動的です。
いいですか。processingをこれだけ引き合いに出して、ストーリーとして完結しますよ。とくにPVが観察だなん
て言わなければ。PVはオブジェクトとの対話をより一層可能なものにするモジュールなのですよ。
もう一つ。そういうストーリーが「聴衆が期待している」ストーリーなのですよ。
2010/09/04 12:55:02| nk: 現状での各モジュールの認識
見当違いのことを考えている可能性があるので現在の各モジュールについての認識をメモしておく。
順化のプロセス[予想、行動、観察、(そして試行錯誤の繰り返し)]
行動にあたるのがeffect/action
観察にあたるのがPV
試行錯誤の繰り返しにあたるのがVC(ミソは前後の比較に止まらず、revisionとの比較に変わったところ)
予想は頭の中(や紙)かな?
2010/09/04 12:50:09| RHa:
そうすれば、こういうスライドも追加したくなる。
「RADへの挑戦」
まぁ、遊び心ですが…
2010/09/04 12:45:43| nk: (Re: 2010/09/04 12:11:26| RHa)
「アルゴリズム開発支援とは」というスライドに力点を置いて全体を作成するということですね。
p{color:gray}. ITSとPVの仕様についてのスライドを作っています。
スライドの順番はsampleから取り込む際に順序を変えて並べていきます。
(一応slide.tex上の順番は昨日説明を受けた順序に並んでいて、 inc/<number><filename>.inc という形で置いてあります)
2010/09/04 12:11:26| RHa:
見えた!
このスライドがキーだ。
「アルゴリズム開発支援とは」
これが4つのモジュールじゃないか。
ちなみにsampleのスライドは順番はいい加減ですからね。
2010/09/04 11:46:10| nk: pstricks pst-grad
fillstyleオプションにgradientを渡すには \usepackage{pst-grad}
2010/09/03 22:20:15| RHa:
毎日発見。
\fnode というのを始めて知った。PSTricksのマニュアルよく読まなきゃな。
これは、フレームの大きさとノードの端点の位置を指定できる便利なノード生成コマンド。
これを使わない手はない。
2010/09/03 17:29:35| nk:
スライド1枚追加か(PV利用法1,画面が広い場合)
p{color:gray}. 矢印なしでも描こうと思えば描けるものだ。
2010/09/03 16:45:01| ym:
To: RHa
\FSに2番目の引数を与えても文字の縮尺が変わりません。
stの環境でも試しましたが、できませんでした。
2010/09/03 15:55:22| ym:
「プレイリストー「静的」と「動的」」のスライドを更新しました。
メインのJukeboxが中央になるよう配置し、
横のつながりを考え、各項目を整理しました。
2010/09/03 15:43:54| nk:
スライド1枚追加。画面が狭い場合について(PV利用法の2)
PV利用法1も書く。(こちらは画面が広い場合について)
それが終わったら試行錯誤のところを直す。
2010/09/03 15:31:43| RHa:
stateを追加してみた。モジュールの連携。
2010/09/03 14:32:20| RHa:
To: nk
リビジョンのスライドに1段追加。では、フォークしてください。
2010/09/03 12:08:30| nk: (Re: 2010/09/03 12:03:19| RHa)
言いたかったことがスライドになっている。
スピードが足りない。>自分
PVの使い方に2種類の方法が考えられることに気づいた。
それは、
viewerをひとつだけ利用する方法はコマンドを作成できてキーにbindできるemacsの機能が最大限に生かされている。
同じ深さの移動を↓↑の矢印キーで行い。←で処理前の画像に進み、→で加工の候補に戻ってくる。
と文章にせずにスライドに起こさなければ…
2010/09/03 12:03:19| RHa:
To: nk
資料一枚追加。リビジョンのキー形式について。
+ 2010/09/03 12:36:10 追記
rollbackが必要だから、更新。
2010/09/03 10:12:50| RHa:
原点を中心にすれば、(2,2)行列は全て符号の正負で対応できるという、至って当たり前の原理。でもこれこそ単
純化に他ならない。結局、そんな当たり前でうっかり忘れている数学を使うとスライドはすごくシンプルになる。
単純化すればするほど、パターンが見えてくる。デフォルメして「ぼかせばみな似てくる」のは当たり前。マク
ロでは動きが複雑なものでも、局所的に精細にミクロな部分を観察すれば、そこにあるミクロなパターンが見つ
かる。逆に、ミクロな精細なパターンを一生懸命見つけて記述し切れば、マクロな複雑な構造を作り出すことが
できる(かもしれない、そんな淡い期待)。
スライドごときもので大げさかも知れないけれど、アートはみなそういうもの、とくにprocessingのようなプロ
グラミング環境が作り出すビジュアルアートや、音楽の世界で言ったらアルゴリズミック作曲。ミクロな構造が
大事なんです。
さらに言えば、ミクロな構造は実装可能です。マクロな構造(感性への刺激だとか作者の意図だとか醸し出す雰囲
気とか動きとか現実の描写とか構図)は結果的に出来上がってくるもので、実装が難しいわけです。僕はミクロな
構造しか作れません。だからこそ、パターンの見つかるミクロな場所まで場所を「探索」場所を限定していくし
かないのです。
数学的構造とミクロからの構築が、いかにデザインをよいものにするかは、よい機会だから、みな川崎先生の招
待講演を聞きにいくといいね。
2010/09/03 03:12:00| nk: (Re: 2010/09/03 03:02:40| RHa)
なるほど。言葉は適切ではないかもしれませんが、次のスライドの
「個人の趣向に沿った作品へ改変」という部分を前面に押し出すということですね。
individual → individualizable
2010/09/03 03:06:13| RHa: (Re: 2010/09/03 02:51:44| nk)
makeが通って読めることを確認しました。
2010/09/03 03:02:40| RHa:
individual parametersではなく、僕の意図はindividualizable parametersです。「個人化可能な」です。
要するに、画像のアルゴリズムを支配しているパラメータではなく、継承者が自分の好みで利用(修正、個人化)
するのできるパラメータという意味合いです。adhocな変数なのかもしれませんが、「場当たり的」ではなく、作
品の完成度を高めるためのチューニングパラメータです。
2010/09/03 02:51:44| nk: (Re: 2010/09/03 02:40:21| RHa)
すいません。直しました。
nkf -eと文字コードの判別をnkfに任せたせいかもしれません。
2010/09/03 02:40:21| RHa: (Re: 2010/09/03 00:42:08| RHa)
inc/の中はEUC-JPになったようだけど、肝心のslide.texはもはや文字コード判別もできません。
% nkf -g kobayashi/slide.tex
BINARY
emacsでも開けません。UTF-8で開くと「金沢工業大学」の6文字だけは辛うじて読めます。EUC-JP、SHIFT_JIS、
ISO-2022-JPでは完全文字化けです。
2010/09/03 02:24:08| RHa: (Re: 2010/09/03 00:37:06| RHa)
もう一枚スライド追加。sample/sample-kobayashi.tex
2010/09/03 00:55:29| RHa: (Re: 2010/09/03 00:37:06| RHa)
この一連のスライドの作り方は大失敗だった。中心を(0,0)で作って、rputで移動させれば、もっと簡単にかけた。
pstricksでのスライド作成のコツ。最近、そういう認識をもってきたんだけど…
中心的なオブジェクトを原点に描け。もしくは見えない中心点を構想中の絵の中から探せ。
二度と失敗しないようにしよう。>自分
だから、
\psframe(1,1) は \psframe(0,0)(1,1)
\pscircle{1} は \pscircle(0,0){1}
\psellipse(1,2) は \psellipse(0,0)(1,2)
など、座標をとる多くのコマンドが原点の分は一つ省略できるんだ。
応用すると、左下(2,3)、右上(7,4)の長方形を描きたい場合もあるだろうけど、左下を(2,3)にして幅5、高さ1の
長方形を描きたいということが案外多い。そんなとき、今まで、
\rput(2,3){\psframe(0,0)(5,1)}
ってやってたけど、
\rput(2,3){\psframe(5,1)}
だけでよかったんだ。こうしておけば大きさ変えずに移動が簡単。
2010/09/03 00:53:53| nk: (Re: 2010/09/03 00:43:35| RHa)
pushしてませんでした。
ただ、4つのモジュールについて文章で説明しようとした瞬間に絵を書きたくなって
ノートに移行したのでたいしたことは書いていません。
現在は状態の格納方法について取りかかっている。
基本的には永続化を考えず、揮発性のVCを管理する予定(todoに永続化を加える)
今のところkeyは(0 1 2 0 1)のようなlistにする予定(右から順に呼んでいく)
例えば、今回のは初めの画像から5つ遷移した状態のtopから1 0 2 1 0と進んで行った先。
(利用する数字を1-9に限定すれば数字にすることも可能ではある。)
(prototypeなので試行回数を制限しないようにした。ということにする。
schemeの場合unsigned charのlistのようなものは存在していない。uvectorは固定長だし。)
2010/09/03 00:43:35| RHa: (Re: 2010/09/03 00:30:32| nk)
僕には分かるんです。一番つまらないところですから。僕もプログラミングバカだったから、そっちはすごく楽
しくて他人に説明するのは面倒くさかった。自己満足のプログラミングだけでも楽しいんだけど、他人から喜ん
でもらえるともっと楽しくなること間違いない。どこかで、プログラミングと仕様書とを両立させなければいけ
ない。仕事についたら5割プログラミング、5割仕様書ならまだマシです。3割プログラミング、いや2割かもしれ
ない。uskに聞いてみたいもんだねぇ。
でも、学生時代は9割プログラミングバカで構わない。それが本分なのだから。だけど残りの1割が学会とか卒論・
修論発表のための仕様書記述だと思ってください。
早く学会が終わることを楽しみに、今はそれでもどこかで修得しなければいけない仕様書作成の練習だと思いま
しょう。
2010/09/03 00:42:08| RHa: (Re: 2010/09/02 23:54:39| nk)
pushした?
2010/09/03 00:37:06| RHa: (Re: 2010/09/03 00:09:58| RHa)
例えば一つの表現方法の雛形。
そもそも僕はこういうものを作りやすくjotclassを構想していたんです。まだまだ未完ですが。
大きさはxunit,yunitで調整できます。
sample/sample-kobayashi.tex
右に少しでも物書きができる余白を残しておきました。
他の人もぜひ見ておいてください。
2010/09/03 00:30:32| nk:
進捗報告
texですぐにコミュニケーションを取れるほど高速にスライドを作成することが出来ません。
初めは文章でユーザーガイドを書こうとしました。
現在は、紙のノートに仕様をまとめています。
明日の朝には、IDE,PV,ITS,VC4つのモジュールについてそれぞれ
の系8つのスライドの紙を書いてくる予定です。
(重複をまとめるともう少し短くなるとかもしれませんが)
何にせよ、今まで全然とんちんかんなことをやっていた。
作っているプログラムの説明書を書けという言葉でやっと何をするべきなのか分かった。
本当に何を考えていたんだろう>自分。
2010/09/03 00:09:58| RHa: (Re: 2010/09/02 23:44:47| RHa)
processingで描かれるものはたとえランダムであっても、何か特定の統計学的なパターンを持ったランダムであっ
て、それは数学的な単純な規則なのです。往々にして幾何学的な性質に基づいてプログラムされています。これ
は絵だけでなく音楽もそうなのです。ですね>ym。
processingだけではありません。パワーポイントが美しくないのはパターンが描けないからです。PSTricksで絵
を描くことが何が素晴らしいかといえば、幾何学的な絵とそれを登場させるパターンの記述がプログラムできる
からなのです。>nk
それがJava言語なのか、TeX言語かの違いだと僕は思うのですが。
だから何らかのパターン化を試みなければいけないのです。じゃなきゃ、PSTricksなんて使っている意味はあり
ません。それはprocessingだって同じです。
2010/09/02 23:54:39| nk: (Re: 2010/09/02 23:20:42| RHa)
すいません。全部euc-jpに変更しました。
2010/09/02 23:44:47| RHa:
絵を描くときは、幾何学的な性質を使うことがデザインのコツです。
とくに対称性を崩せば、不安定な感覚を与え、強い意味が発生します。
合同・相似を崩せば違和感を与え、強い意味が発生します。
たとえそれが0.01mmでも接しているか接していないかで大きな意味に違いが発生します。
平行も直交も一番角度を感じない角度 (それぞれ0°、90°) も、崩せば意味が発生します。
交差に関してはどこにどのように何度交差しているのかで意味が変わってきます。
距離・大きさ・方向にも、そこに込めた思いは他人は共有していない可能性があります。
内包 (ある図形が他の図形に含まれる状態) には「含まれる」という意味をもちます。
連続的変化はつながりや流れを生み出します。
輪郭線の太さは強烈な周に囲まれた領域を作り出します。これは内包の極限形です。
色にも連続的、断続的な変化を与えることもできます。または一貫した意味を与えることができます。さらに色
によって心地よさも不快感ももたらされます。
単純であればあるほど、理解しやすいのはいうまでもありません。でもそれは脳の認識のメカニズムに直結して
いることをお忘れなく。
これらの幾何学的な構造を他人の目で客観的に見てください。
少し例を示す予定です。とくに「対称性」はとても大事です。そのような絵には説明をつけたくなるのです。
2010/09/02 23:20:42| RHa:
To: nk
チャット読んでない? (Post: 2010/09/02 18:27:55| RHa)
小林君のディレクトリは文字コード3つ混在しています。大至急直してください。EUC-JPに統一してください。
あれ?僕のシステムがおかしいのかなぁ。
2010/09/02 23:03:45| RHa:
今肝心なのは、何が何でもスライドを完成させ、発表に向けてストーリーを詰めていくことです。これは予断を
許さないことなんですね。さて、それに向けて、完成させるために障壁になっていることを全て、洗いざらい打
ち明けてください。
できないことをほっといて、できるはずはありません。
できないことはできない、手伝ってほしいと言ってくれなければ、誰も手伝ってくれません。
それと、何が「譲れない」ものなのかをはっきりさせてください。誰かに手伝ってもらうのであれば、触ってほ
しくないものがあるならばはっきりさせてくれなければ手伝えません。
それと、手伝ってもらったら、自分の当初予定していたストーリーではなくなるかもしれません。そういう変更
にどれだけ寛容ですか。とくにnk。
こういうプレッシャーに勝つのが「能力」です。勝たなきゃいけないのですよ。僕は時間と戦っています。みん
なも一緒に戦ってください。
この場合は「克つ」かな?
みんなが「時間」に対して改めて認識を深めてくれたのであれば、僕の戦いは無駄ではありませんでした。
2010/09/02 20:34:18| 高橋: (Re: 2010/09/02 20:29:35| RHa)
了解。曲線と合わせて更新します。
2010/09/02 20:29:35| RHa:
To: st
p.2 緑と青、ではなく、赤と青にしましょう。
赤の補助線はグレーにしましょう。いや、補助線のせいで、かえって不連続であることが見えなくなっている。
端点に丸をつけるのです。補助線は多分いりません。
他のスライドも赤と青に修正。同じ主旨のものを同じ色で。
だいぶビビッドなスライドにはなってきました。
2010/09/02 20:19:57| RHa:
あ、僕もsample/work/Makefileをコミットするの忘れてた。
2010/09/02 20:11:46| 高橋: (Re: 2010/09/02 20:06:22| RHa)
いえ、もう作成にとりかかっています。曲線の駆逐、遅くなってすみません。
> \iffalseを外して〜
気をつけます。
> sedの使い方とともに〜
そうでした。有効に活用します。
2010/09/02 20:06:22| RHa:
To: st
まだ曲線が駆逐できていませんね。
まだクリッピングと格闘しているのですか?
p.16 のオレンジは、もっとまばゆいオレンジにしましょう。インパクトがありません。
Makefile、cleanターゲットでpdfも消すようにさせてもらいました。
コミットする時は、 \iffalse を外してください。
(Post: 2010/09/01 22:18:46| RHa)
(Post: 2010/08/31 16:52:41| RHa)
にsedの使い方とともに書いてあります。いちいちエディターで探してけす必要はありませんよ!!
2010/09/02 19:58:41| 高橋: (Re: 2010/09/02 19:55:20| RHa)
失礼しました。今、コミットしました。
2010/09/02 19:58:37| RHa:
To: nk
processing 作品の伝搬…
processing 2つの…
絵的なバランスはだいぶ良くなりましたね。あとは、モノトーンな淡白な幾何学絵のスライドを同じくらいボ
リュームを感じることができる表現リッチなスライドにしてください。
スライド全体で、小さい字が多いです。小さい字はだめです。
p.3 の2D、3Dは、僕には分かりませんが…
スライド一枚一枚ポイントを絞ることが大事です。
2010/09/02 19:55:20| RHa:
To: st
wave.defがなくて、makeできません。至急コミットしてください。
2010/09/02 19:51:45| ym: (2010/09/02 19:31:15| RHa)
分かりました。
頑張って描いてみます。
psgridはコメントアウトしました.
2010/09/02 19:31:15| RHa: (Re: 2010/09/02 18:45:17| ym)
そんなもんじゃ足りない。で、下を修正しておいた。
いいですか。このスライドにも意味があるんですよ。
このミュージックプレイヤーには!スキップボタンしかない!
それを話にも入れるんですよ。
あぁ、傾いたpsgridを入れっぱなしにしちゃいました。
絵はセンスないので、ぜひ納得がいくものを作り直してください。
2010/09/02 18:45:17| ym: (2010/09/02 18:41:08| RHa)
他のスライドとはガラッと雰囲気が変わりました。
確かにインパクトありますね。
2010/09/02 18:41:08| RHa:
To: ym
少なくとも、これくらいはインパクトを与えてください。
修正
preambleに \usepackage{wasysym} と書いておいて、
\begin{Blank}
\psframe[style=fill,fillcolor=seagreen!60!black](-1,-1)(12,9)
\rput{15}(8,2.5){%
{\psset{fillstyle=none,linewidth=2pt,linecolor=white,framearc=.2}%
\psgrid(-4,-1)(4,6)
\psframe(0,0)(3,5)
\psframe(.2,3)(2.8,4.8)
\psframe(.5,.5)(2.5,2.5)
\rput(1.3,1.5){\pspolygon[style=fill,fillcolor=white](.8;0)(.8;120)(.8;240)}
\psline[linewidth=4pt](2.2,.8)(2.2,2.2)
\psellipticarc[linewidth=3pt](-2.5,3.7)(.4,1.2){-20}{200}
\pscurve(-2.1,3.2)(-1.5,4)(-1,1)(0,2)
\psellipse[style=fill+l,linewidth=3pt,fillcolor=seagreen!50!black](-3,3)(.2,.5)
\psellipse[style=fill+l,linewidth=3pt,fillcolor=seagreen!50!black](-2,3)(.2,.5)
\rput{-10}(-2,2.5){\scalebox{3}{\lightgray\eighthnote}}
\rput{150}(-3.6,3.4){\scalebox{3}{\lightgray\twonotes}}
}%
}
\rput[tl](0,3){\FS{28,.6}\Sparbox{11cm}{%
\white
現実の\underline{ユーザーを想定}し、...\\[4mm]
\hfill パターンシミュレーションを行った}}
\end{Blank}
2010/09/02 18:27:55| RHa:
nkのディレクトリは、文字コードが3種類混在していて、バッチ処理がうまくいきません。
% for i in `find kobayashi -type f` ; do echo -n $i': ' ; nkf -g $i ; done | grep -v BINARY | grep -v ASCII
確認してください。
2010/09/02 18:22:37| RHa:
いつまでも動かないようなので、勝手にコミットさせてもらいます。
kobayashi/Makefile
machida/Makefile
古い内容はコメントアウトします。適宜削除してまたコミットしておいてください。ただし、
mkslideとpstopdfxの最新版であることを確認してください。
mkslide
ps2pdfx
nkはどうせ個人的にはRakeでやってるんでしょ?
2010/09/02 17:48:46| 高橋: (Re: 2010/09/02 17:32:22| RHa)
そんなところまで設定できるとは流石ですね。早速、追加しました。
2010/09/02 17:32:22| RHa:
線に太さがあって、角度が急だと線画の折れるところの処理にバリエーションがありえます。
例えばこのページのsetlinejoinのところを見るといい。
Postscript Tutorial
デフォルトではこの中で、miter joinというやつ。尖っちゃうわけだな。
miter join … 0
round join … 1
bevel join … 2
この中で、まぁ、ラウンドジョインが気に入ったとする。ならば、こうすればいい。
\pscustomの中で、頭の方に、 \code{1 setlinejoin}%という一行を追加しよう。
これで拡大しても、変に線がはみ出すことがなくなる。
なぜpstricksでデフォルトでこれじゃないんだろうか。
我が家ではテストしました。ぐー。(sample/sample-takahashi.pdf)
2010/09/02 15:36:42| 高橋: (Re: 2010/09/02 14:57:56| RHa)
返事遅れて、すみません。topstricks仕様変更の件、了解しました。
2010/09/02 14:57:56| RHa: (Re: 2010/09/02 14:49:00| RHa)
修正(sample/work/topstricks)
-ave, -min, -raw のいずれかの指定は必須。
-cm [width] はオプション。
% cat signal.eps | ./topstricks -ave -cm 6 > wave.def
% ./topstricks -ave -cm 6 signal.eps > wave.def
ともに同じ結果を出力します。幅6cmに値を全て補正します。縦横比は弄りません。
今、僕のサンプルをこれに準じて修正してみます。予告通り -ave を使います。
+ 2010/09/02 15:30:48 追記
sample-takahashiも修正してみました。xunitとかyunitを使わなくても、程よいサイズになりました。ちょっと
小さいかもしれませんが、あとは通常通りの拡大縮小をすればいいはずです。あと、y軸の0点の補正は波形の中
心で、というのはやはりすごくいいです。描画位置が意図通りにうまくいきます。
ちなみに、僕の作成したwave.defはこのプログラムが作成してから1/4に間引いています。それでも1463点という
のは、なかなかきついですね。今改良版を検討中。PSのコードを直に入れてみます。追って結果を知らせます。
2010/09/02 14:50:29| RHa: (Re: 2010/09/02 14:41:21| nk)
いや、ちょっと違います。
今のストーリーで聴衆を飽きさせない自信ありますか?
どこかのタイミングで、グッとくる 起承 転 結 が欲しくなるのです。
その「転」をどこにもっていくかです。「起承転結」という言葉があるように、「転」はケツの前なんです。
2010/09/02 14:49:00| RHa: (Re: 2010/09/02 14:23:21| RHa)
No!!!!
今ひとつ待って。
-cm の仕様を変える。
2010/09/02 14:41:21| nk: (Re: 2010/09/02 14:38:43| RHa)
スライドの後ろの方に残しておいて時間があったら発表できるようにするということですか?
確かにその方が良さそうです。後ろの方に残しておきます。
2010/09/02 14:38:43| RHa: (Re: 2010/09/02 14:23:57| nk)
To: nk
メインの話の流れから外してもいいけれど、「視点を変えると…」という話を作ることもできる。消すのではな
く、順序を変えて、後ろの方にもっていくことを勧める。
2010/09/02 14:23:57| nk:
スライド作成。「作品の伝搬 $simeq$ 技術の伝搬」の次のスライド。
今回の発表で作品の伝搬について詳しく言うことをやめた。
それよりも、パラメータチューニング(調整と試行錯誤)に重きを置くことにした。
そのため、類似性について述べようとしたスライドも、変数を調整しながら実行時の出力の変化を観察することで
理解が深まるという趣旨のスライドに変更。
2010/09/02 14:23:21| RHa:
To: st
topstricks スクリプトを更新しました。
まぁ、使うかはともかくとして。
% cat signal.eps | ./topstricks -min -cm みたいにフィルターとして使う。
% ./topstricks -ave -cm signal.eps みたいにスタンドアロンプログラムとして使う。
オプションは必ず指定しないといけません。
-min はy座標値の最小をベース0とし、x座標値は開始を0とします。
-ave はy座標値の最小値と最大値の平均をベース0とし、x座標は開始を0とします。
-raw はx,y座標ともにそのまま出力します。
-cm はその結果を全てセンチメートル単位に直します。それでもでかいんですが…
通常、僕は、
% cat signal.eps | ./topstricks -cm -ave > wave.def みたいに使います。
2010/09/02 12:07:10| RHa:
jotclassを更新しました。基本的には、ファイル構成を少しすっきりさせただけです。
2010/09/02 11:54:40| RHa: (Re: 2010/09/01 21:29:39| RHa)
includegraphicsで存在しないファイルを指定しても、LaTeXは警告しか出さず、処理がストップしません。
これはまったく意図に反するものなので、mkslideではtexのエラーコードの他に、Fileの不在の警告をlogから探
し出して、あれば処理を停止するようにしました。
このバージョンのmkslideはやや冗長になってしまいました。latex純正のlogファイルはhoge.logですが、ここで
は、hoge.tex.logとhoge.dvips.logが吐き出されます。
エラーがなければ、
* LaTeX in process...
* dvips in process...
とだけ出力されます。エラーがあれば、赤色でエラーを知らせてくれます。
修正
mkslide
コピーしていった際には、エスケープシーケンスのところの文字がつぶれてしまったら、emacs
で、 C-q [ で復活させてください。
2010/09/01 22:37:05| 高橋: (Re: 2010/09/01 22:18:46| RHa)
すみません。目印代わりにしていたのをけし忘れていました……
2010/09/01 22:18:46| RHa: (Re: 2010/08/31 16:52:41| RHa)
高橋君のスライドは
\iffalse %%%%%%
\fi %%%%%%%%%
みたいになっているので、それを取り除くsedコマンドを修正。
元は、
% sed -i.bak '/^\\iffalse$/d;/^\\fi$/d' slide.tex
修正
% sed -E -i.bak '/^\\iffalse([ ]|%|$)/d;/^\\fi([ ]|%|$)/d' slide.tex
FreeBSDではうまくいく。あとはGNU sedでうまくいくか。
sed, gsedが対応している正規表現のレベルとかオプション引数とかよく知らない。
2010/09/01 22:03:28| RHa:
To: nk
sampleで最初のスライドも整理しました。
言葉「…たい」とか、文章は簡潔に。
2010/09/01 21:29:39| RHa:
mkslide、errorstopmodeはダメだ。batchmodeだ。
修正
mkslide
ようするに、TeXが一時停止するのでなく、強制的にバッチモードになるべきだった。
以前も
2010/09/01 17:42:57| nk: (Re: 2010/09/01 17:39:55| RHa)
わかりました。
sampleを参考に変更を加えます。
言葉をもっと詰めます。
ちなみに、このスライドで丸が4つ重なった図を使わないとなると、
「アルゴリズム開発支援とは」というスライドで利用した図を
「モジュールの構成」の図を簡略化したものを利用することができそうです。
現在、それを利用した「アルゴリズム開発支援2」を作成しています。
完成したら、またチャットに書き込むので批評をお願いします。
2010/09/01 17:39:55| RHa:
To: nk
sampleの中も見てください。
システムの要請のスライド作って見ました。
言葉はもっと詰めなければいけない。
スライドをベースに「しゃべり」でやるわけですから。
「…たい」はいらないよね。
作品の伝搬
矢印が多すぎる。「作品の伝搬」というものがどういうものなのかまだ良く分かりません。
2010/09/01 16:50:56| RHa:
あぁ、くだらない会議に時間がとられた。
2010/09/01 15:40:37| ym:
「実験結果とその考察」を更新しました.
言いたいことを書いたら文字だらけになってしまった.
文字の多いスライドは読む気がなくなりそうなので,簡潔にまとめなおしたい.
2010/09/01 14:41:14| nk:
processing 「作品の伝搬 $simeq$ 実行状態の遷移」のスライドを改良しました。
webから自分の描いた絵よりずっと素晴らしい絵を持ってきてそれを利用しました。
そして線の数を少なくしました。
こんな対応で正しいのかな?*綺麗事*の意味取り違えているのかな?分からない…分からない…
現在は要請のところをアニメーションをなくす方法を考え中。
2010/09/01 11:45:14| 高橋: (Re: 2010/09/01 11:28:47| RHa)
注意します。今、Makefileを整備しました。rebuildを追加。デフォルトはpdfになっています。それから、samp
le-takahashi.pdfで波形の線から下を塗りつぶす効果も確認しました。
2010/09/01 11:43:59| RHa:
こうやって作ったwave.def、
解像度が高すぎてTeX側での処理に時間がかかる。さらにデータを編集して、4行中3行を間引いて1/4にしても全
然問題ありませんし、多分もっと減らすことも可能でしょう。
いろんなこと考えて、あまり自動化しない方がいいでしょうね。signal.epsとwave.defはともにレポジトリに最
新版をコミットしておく。
2010/09/01 11:28:47| RHa:
いつも忘れる。
{\psset{...} ...}% この行末の % はとても重要です。後ろに改行すなわち、空白文字出力命令が入るか、
それをさせぬか。
空白文字出力命令なんて入れるつもりがないとき、行末をいつでも%で抑えておくと安全。
2010/09/01 11:13:18| 高橋: (Re: 2010/09/01 11:04:54| RHa)
そうですね。でも、emacsの便利な使い方をまた一つ知ることができました。では、Makefileで実行するように
環境を整えます。
2010/09/01 11:04:54| RHa:
ここまでスクリプトができたら、例えば、空のwave.defファイルを開いておいて、
C-u M-! ;;; 今度はビックリマーク
でShell command:プロンプトで、 cat signal.eps | ./topstrticks
としてもいい。
だんだん、よからぬ方向にいく。
そもそもシェル上で、
% cat signal.eps | ./topstricks > wave.def
ってすればいいってはなし。
なら、Makefileにもそれを書いておくか。
wave.def: signal.eps cat signal.eps | ./topstricks > $@
2010/09/01 10:56:21| 高橋: (Re: 2010/09/01 10:25:41| RHa)
スクリプトのemacsでの実行方法を確認しました。こういう風にも使えるんですね。今、sampleディレクトリに
あるwave.defとは違って、余計な領域を排除した使いやすいデータになるようにも調整しているんですね。
スクリプトで作ったデータから、波形を表示するところまでを試験的に実践。以前とは比べものにならないくら
い綺麗になった。
2010/09/01 10:25:41| RHa:
昨日は寝てしまった。さて、
To: st
signal.eps, freq.epsともに、以下のスクリプトで「相対座標」を駆逐できますね。
#!/usr/bin/env ruby # # topstricks (0755) # def round2(x) ; (x*100).round.to_f/100 ; end commands = [] $<.each_with_index { |line, lineno| if /^([0-9.-]+) ([0-9.-]+) (.*)$/ =~ line a, b, action = $1.to_f, $2.to_f, $3 if action == "m" $cx, $cy = a, b commands << [:moveto, $cx, $cy] elsif action == "l" $cx, $cy = $cx + a, $cy + b commands << [:lineto, $cx, $cy] elsif action == "lineto" $cx, $cy = a, b commands << [:lineto, $cx, $cy] else puts "%%error at #{lineno+1}: #{line}" end end } $xmin, $xmax, $ymin, $ymax = 1e10, -1e10, 1e10, -1e10 commands.each { |c, x, y| $xmin = x if x < $xmin $xmax = x if x > $xmax $ymin = y if y < $ymin $ymax = y if y > $ymax } puts %|%%x=[#{round2($xmin)}, #{round2($xmax)}], y=[#{round2($ymin)}, #{round2($ymax)}]| #(ymin+ymax)/2をベースにするかyminをベースとするか、ここでは後者を選択(前者はコメントアウト) commands.each { |c, x, y| puts %|\\#{c}(#{round2(x-$xmin)},#{round2(y-$ymin)})| #base=($ymax+$ymin)/2 #puts %|\\#{c}(#{round2(x-$xmin)},#{round2(y-base)})| }
大事なのはフィルターとして作ることです。そうすると、emacs、viから呼び出せる!!
テストとしては、
% cat signal.eps | ./topstricks
emacsでは、対象となるファイルを開いてください。対象となる行をリージョンで選択するか、C-x hで全てを選
択しても構いません(想定しているファイルであれば…)。
リージョンが選択できたら、 C-u M-| と打って、Shell command on region:プロンプトで ./topstricks とタイ
プしてください。
xmaxは少なくともいらない。まぁ、そんなこといわないで書いておく…
2010/09/01 01:26:18| RHa:
To: nk
スライドの中では部分的なセンタリングは全て外してください。
線が多くて絵がうるさくなってませんか?
さて、絵を書いていて、妥協しているところはありませんか?
pstricksだとうまく書けないからこの程度でいいやとか、所詮数秒の絵だからこの程度とか、…
アクションは極力少なくしましょう。
要請のところは、白抜き色枠で書いているものが「箇条書き」の方がわかりやすい。
多分、それらも完全直交の話ではないので、関連性についても言及が必要になる。だったら一枚のスライドに項
目がまとまっている方がわかりやすい。
とにかく沢山あります。また明日。
2010/09/01 01:11:30| RHa:
あぁ、…
さて、signal.epsをpstricks/pscustomに持っていくとこういうことができます。
sample/sample-takahashi.tex
sample/wave.def
少し解説が必要ですね。明日にでも…
x y l => \rlineto(x,y)
x y lineto => \lineto(x,y)
currentpoint o m => 無視
三番目のものは、…
現在のカレントポイントをスタックに積んで(currentpoint)、
これまでバッファに蓄積した線情報をストローク(描画)(o)、
スタックに積んだトップへ移動(m)
これはメモリの少ない状況で断片的に線を描いていく方法なわけですから、冗長。従って取り除いても意味的に
は同じになりますね。
\rlineto 使っちゃってるから、そのままpst-plotのマクロが使えない。
状態マシンは面倒くさい。データが状態を作らないとならない。状態によってデータの意味が変わってしまう。
2010/08/31 22:34:21| 高橋:
なんか結果がおかしいから、いまいち実験結果に自信が持てなかった。なので、再度色んなテストを試みた。今
まで信用して使っていたFFTの結果まで逐一見た。
その結果。僕の無知……というか観察力の無さがわかった。今までFFTの結果なんて飽きるほど見ていたのに、動い
ていることに感動して考えることをしなかった自分を恥じる。
負の周波数の存在。それを失念していた。だから、結果がおかしかった。今、それを修正した。補間した周波数分
布もそれらしいものになり、今まで音にすらなっていなかった補間音が音になってる!
バカで愚かでどうしようもない自分を恥ずべきなのに、何と感動的な瞬間だろう!
2010/08/31 20:01:19| 高橋:
jhesのプログラムが公開されました。
ymとstは11日の14:00〜15:00の最初2連続。で、土曜終了。nkは12日の9:30〜10:18の4人中最後の発表となって
いるようです。
2010/08/31 18:23:44| 高橋: (Re: 2010/08/31 18:17:39| RHa)
分布にもRを用いていますから、同様の処理で解像度をあげることができると思います。
takahashiディレクトリに先ほどと同様に生成されたままの形でfreq.epsをアップしました。
2010/08/31 18:18:33| 高橋: (Re: 2010/08/31 17:40:59| RHa)
今、色替えとクロッピングをマニュアルで実行してみました。線の太さの目安までありがとうございます。
2010/08/31 18:17:39| RHa:
もう一つ。
分布の方の出力は何を使っていますか?
そちらも解像度に気をつけた処理できますか?
この単純なEPSは、m(moveto)、lineto、l(rlineto)の三つの命令だけで線画を書いていることが分かるでしょう。
PSTricksの \pscustom (パス作成) で使えちゃうから、そっくりそのまま PSTricksの絵にできそうだな。そう
すれば、もっと弄れる!!!
また後で、今晩にでも書いておきます。分布の方もそれなら安心だ!
2010/08/31 17:40:59| RHa:
とくに、stへ。
コミットされたEPSファイルを読みました。
- 1 setgray
+ 1 0 0 rgb
と書き直してください。
それで赤くなります。あとは何とでも色は作れますね。
追加
- 0.75 setlinewidth
+ 1.5 setlinewidth
これくらい太くすれば、絵的に他の部品に負けないでしょう。
追加
- %%BoundingBox: 0 0 719 359
+ %%BoundingBox: 80 135 690 239
マニュアルでクロッピングしました。まぁ、あまり意味ないか。 \includegraphics でbbすればいいわけだか
ら。
追加
gvでEPSを見ると、線が所々断続的になっているように見えますが、最終物には現れません。
2010/08/31 17:18:06| 高橋:
To: RHa
takahashiディレクトリにwave.eps(出力されたままのもの)をアップしました。
2010/08/31 16:52:41| RHa:
いちいち全体のコンパイルにだいぶ時間がかかっているようだけど、…
今、注力しているスライドとそうでないスライドを峻別する方法を教えます。
TeXでは、 \iffalse と \fi で囲まれた領域は処理されません。何故かというとデフォルトの無名ブーリア
ン変数はtrueだからです。
\begin{document}
...(a)
\iffalse
...(b)
\fi
...(c)
\iffalse
...(d)
\fi
...(e)
\end{document}これで、 (a) と (c) と (e) だけが出力されます。
これを行頭だけに書くルールを徹底すれば、コミットする時には、自動削除が可能ですね。
% sed -i.bak '/^\\iffalse$/d;/^\\fi$/d' slide.tex
slide.texからは行頭にある \iffalse と \fi は削除され、それらを残したバックアップファイル
slide.tex.bakが作られます。もちろん、slide.tex.bakをコミットする理由はありません。
コミット後、 \iffalse と \fi を残したファイルで作業を継続したければ、
% mv slide.tex.bak slide.tex
それだけです。まあ、こういう作業はフックを書きたくなるんでしょうが、…
2010/08/31 16:24:33| 高橋:
スライドに使う画像の解像度を150から300に変更。画像の縮尺が滅茶苦茶に……なったところで、解像度の問題
をどうにかするために、まず部分的に大きさを修正。これで、検討する場を整える。
2010/08/31 16:04:35| RHa:
To: ym
推移確率魚列のところ、図の中を小文字のpにする。
\SB{.8}{...} は \SB{...} に書き直す。
楽曲推薦は根を左に、葉を右に。上から下は不格好。それに、もっと引用を増やさないとならないので。
基本的に上下向きの構造(線、矢印)は威圧的・刺激的なのです。左右の構造は優しい。なぜか分かりますか?
静的と動的のスライド、色もマークも単調。どういう絵が望みですか?パワーポイントでもこの絵を書きますか?
枠線の色と中塗りの色、二つ使うとうるさい。
2010/08/31 15:38:10| 高橋: (Re: 2010/08/31 15:32:30| RHa)
了解しました。やってみます。
2010/08/31 15:32:30| RHa: (Re: 2010/08/31 15:10:53| 高橋)
色云々と言うより、「不連続」がはっきり見えてない。それと波形の図、ちょっと拡大には耐えない質だね。も
う少し元のデータの解像度あげられない?
2010/08/31 15:31:59| 高橋:
evinceでプレゼンテーション表示中に数字キー押すと、任意のページに移動できます。(既出?)
2010/08/31 15:28:12| ym:
「増減値の再分配」と「実験概要」改め「実験手順」のスライドのイメージを更新しました。
2010/08/31 15:25:57| RHa: (Re: 2010/08/31 00:33:52| RHa)
うまくいかねぇ、というひとのために(>自分)。
accel でなく accels でした。大変失礼。
元ポストは修正済
2010/08/31 15:10:53| 高橋:
To: RHa
試験的にスライド2ページ目を色付き波形で表現してみました。グリッドがなくなってすっきりしましたが、少
しカラフルすぎるでしょうか?
2010/08/31 13:47:59| 高橋: (Re: 2010/08/31 13:40:18| RHa)
確認しました。詳しい説明まで添えてくださって、ありがとうございます。
2010/08/31 13:40:18| RHa:
めんご。大洞先生とお話ししててpushできなかった。
2010/08/31 13:32:55| 高橋: (Re: 2010/08/31 13:23:53| RHa)
なるほど。そういうことができるなら、試してみます。ときに、pushされました?(汗)
2010/08/31 13:23:53| RHa:
白黒線画はたとえ階調値が入ってても、カラー化が容易です。お試しあれ。
もちろん、こういう処理にはgimpを使います。
元波形と補間された波形に色をつけたらどうですかねぇ。
sample-takahashi.pdfを見てみてください。
2010/08/31 12:47:46| 高橋: (Re: 2010/08/31 12:45:21| RHa)
了解。それでは、こちらはこちらで昼食をとることにします。
2010/08/31 12:45:21| RHa:
まだこっちです。
2010/08/31 12:16:21| 高橋:
To. RHa
画像による和平均と乗平均の違いに関するスライドを更新しました。東京タワーとエッフェル塔のカップリング
です。それから、不要な子は始末しました。
ところで、昼食はいかがされますか?
2010/08/31 10:54:17| RHa:
今扇が丘。もう暫くこっちにいます。スライド描きますよ。リクエストを投げてください。
2010/08/31 08:48:18| 高橋: (Re: 2010/08/31 00:45:39| RHa)
わかりました。修正します。
2010/08/31 06:36:56| nk: (Re: 2010/08/31 00:45:39| RHa)
了解しました。箇条書きで考えてみます。
今残っているところ(まだスライドを仕上げていないところ)をしまった感じに変えると、
出来上がるのは しまったところ - お絵描き - しまったところ という感じになる。
もしかしたら、どこかでお絵描きを別の表現にかき換える必要があるのかも?
2010/08/31 00:45:39| RHa:
絵を書く。というのは、箇条書きだって絵だということを思い出してくださいね。ただし、しっかり構造化する
んです。itemize環境に頼らずにレイアウトしながら箇条書きをしましょう。
st,ym: 先行研究の例は構造的箇条書きで書きましょう。
nk: 美顔処理、考える処理をあのRicohのサイトを要約して、箇条書きで書いたらどうでしょう?
「お絵かき」が多くなりすぎてる。ちょっとしまったところも作りましょう。
2010/08/31 00:33:52| RHa:
evinceはaccelというGtkのショートカット設定API (Accelerator Group) を使っています。
~/.gnome2/accels/evince
を開いて、これはSchemeでかかれているので、なれたもんですね。全てコメントアウトされているので、
(gtk_accel_path "<Actions>/MenuActions/FileCloseWindow" "q")
(gtk_accel_path "<Actions>/MenuActions/ShiftSpace" "b")
なんて、書いちゃいました。
これで、スペース、と b (デフォルトでは
になります。すげー楽〜!
+ 2010/08/31 00:50:00 追記
ただ、今気づいちゃった。viのカーソル移動が割当たってた。
evinceだってvi感覚で使うんだ!あぁ、Unix的〜。
++ 2010/08/31 00:52:38 追記
Ctrl-Nで開いてるファイルをマルチウィンドーにできる。これって便利じゃない。別のページを同時に見たいっ
て、かなり頻繁にあることじゃん。
2010/08/31 00:17:14| 高橋: (Re: 2010/08/31 00:09:18| RHa)
環境の違いだけでなくて、ツールの使い方にも注意が必要なんですね。勉強になるなぁ……
2010/08/31 00:09:18| RHa:
半透明画像 at TeX Wiki PSTricks
これをちょっとよくよんでみるひつようがありそうだ。
図のオプションの
fillstyle=solidのときはopacity
fillstyle=shapeのときはshapealphaを設定するそうだ。
っと、っと、fillstyle=shapeなんて知らんぞ。blendmodeの設定が有効なのはfillstyle=shapeのときだってさ。
2010/08/30 23:47:50| 高橋: (Re: 2010/08/30 23:39:26| RHa)
研究室の小さなノートPCでも、ちゃんと透過して見えてたんですが、Ubunutu 10.04のこちらは塗りつぶされて
しまって透過表現になっていませんでした。ps2pdfxでPDFのバージョンを1.5に変えても無駄で、psTricksで解
決する方法を探して行き着いたのが、.setblendmodeです。
今、jotclassを更新したら問題なく見れました!でも、なんで変更前は見れなかったんだ……?
2010/08/30 23:39:26| RHa: (Re: 2010/08/30 22:48:08| 高橋)
どういうこと?
/Normal .setblendmode ありかもしれないけど、なくても、うち(Ubuntu-9.10)は問題なく透過している。
で、pstricks.sty見てたら、
\DeclareOption{distiller}{%
\pst@def{setTransparency}<
[ /ca \psk@opacityalpha
/CA \psk@opacityalpha /SetTransparency pdfmark >
\pst@def{setStrokeTransparency}<
[ /ca \psk@strokeopacityalpha
/CA \psk@strokeopacityalpha /SetTransparency pdfmark >
\pst@def{setBlendmode}<
[ /BM\ifcase\psk@blendmode%
/Normal \or % 0
/Multiply \or % 1
/Screen \or % 2
/Overlay \or % 3
/Darken \or % 4
/Lighten \or % 5
/ColorDodge \or % 6
/ColorBurn \or % 7
/HardLight \or % 8
/SoftLight \or % 9
/Difference \or % 10
/Exclusion \or % 11
/Hue \or % 12
/Color \or % 13
/Saturation \or % 14
/Luminosity % 15
\else /Normal \fi
/ca \psk@shapealpha /CA \psk@opacityalpha /SetTransparency pdfmark >%
}おっと、これが有効になるためには、pstricks.styを読み込むときにdistillerオプションをつけないといけない。
… jot.cls を書き直しておきます。
そうか、そうやっていろんな色混合アルゴリズムを使えるんだ!
/Normal はもちろん色の混合。 /Multiply あるじゃん。光の混合だったら /Screen なのか??
/Average はないんだね。
color blend mode:色の演算モード
+ 2010/08/30 23:53:37 追記
distillerオプションをつけたので、デフォルトで /Normal でモードがセットされるようになったはずです。
jot.clsアップデートしてください。
2010/08/30 22:48:08| 高橋:
自宅のノートPC(Ubuntu 10.04 LST 64bit)にて、evinceでスライド見たら透過していない……!
この環境での解決法は見つけた。(ps2pdfx使用なので、PDFのバージョンは1.4です)
- \pstVerb{.5 .setopacityalpha}%
+ \pstVerb{/Normal .setblendmode 0.4 .setshapealpha}%
\psellipse[style=point](3,5.8)(.5,1) % nuritubushi
- \pstVerb{1 .setopacityalpha}%
+ \pstVerb{/Normal .setblendmode 1 .setshapealpha}%
このようにすると、evince、さらにacroreadでも透過できていることを確認した。
2010/08/30 19:03:55| nk:
家のPCにインストールすることも考えてスクリプトを書いておく。
(mkslideとps2pdfxがインストールされる)
install-command.zsh
2010/08/30 18:17:04| ym: (2010/08/30 18:10:08| RHa)
間違えて消してしまいましたが、復活させました。
作っていきます。
2010/08/30 18:10:08| RHa:
To: ym
なくなっちゃったようだけど、レコメンデーションのスライドはちゃんと作ってください。
2010/08/30 17:50:14| ym:
パターン行動シミュレーションの(4)(5)までのデータを差し替えました。
(5)の実験は曲が多いせいか、曲順がはっきりと表れていない。
そもそも、曲順が確立される様子は楽曲の再生確率の折れ線グラフには表れない。
別のグラフに差し替える必要がある。
2010/08/30 17:14:56| 高橋: (Re: 2010/08/30 17:04:28| RHa)
patchコマンドを使って、portsにパッチを当てるのはこれが始めてだったので、色々手順があるんだなあっと…
ただ、パッチを当てると聞いて、パッチスクリプトを当てるだけだと思ってた節も多分にあるんですが(汗)
2010/08/30 17:04:28| RHa: (Re: 2010/08/30 16:47:39| 高橋)
てま?
1行目はチェンジディレクトリ、2行目はソースコードの展開、4行目はいつも通りのポーツのmake。
ここでやる手間は、3行め一行です。展開したディレクトリ上で、patch実行。成功不成功をちゃんと確認してく
ださいね。
いや、evinceの吐き出すメッセージはそれだけじゃなかった… まぁ、エラー吐き出すのは正直な証拠。人間と
同じです。
2010/08/30 16:47:39| 高橋: (Re: 2010/08/30 16:40:45| RHa)
パッチ落としてきたところです。結構、手順が必要になるんですね。
+ 2010/08/30 17:01:33 追記パッチ当て終了。鬱陶しいエラーメッセージ軍を排除できた。
2010/08/30 16:40:45| RHa: (Re: 2010/08/30 16:22:04| 高橋)
もうやった?popper-18apr10.pat落としてきて、…
# cd /usr/ports/graphics/poppler # make clean patch # ( cd work/poppler-0.12.4 ; patch -p1 < /path/to/poppler-18apr10.pat ) # make && make deinstall reinstall
2010/08/30 16:22:04| 高橋: (Re: 2010/08/30 16:11:58| RHa)
ああ、消せるんですね……あれが鬱陶しくて……
2010/08/30 16:11:58| RHa:
evinceでうるさいエラーメッセージがコンソールに吐き出されるのに気がついてるでしょうか?WindowManagerの
メニューとかからevince呼んだり、 evince hoge.pdf >/dev/null 2>&1 みたいなことやって回避することもで
きますが…
PDFレンダリングライブラリpopplerが4バイトのUnicodeを前提としていないことが原因のようです。
対象はpoppler-0.12.4ですが、0.13以降では対応しているようです。
ここ からパッチに辿れます。
適用すれば、確かにエラーメッセージはなくなります。
popplerを使った代表的なプログラムはxpdfとevinceです。ようは二つは同じレンダリングエンジンを使っていま
す。従って、poppler由来の同じエラーを吐き出すでしょう。一方で、acroreadはAdobeの独自のエンジンです。
2010/08/30 16:09:42| ym:
実験用プログラムが予想通りに動いたようだ。
パターン行動シミュレーションの(1)から(3)までのグラフのデータを差し替えました。
2010/08/30 15:03:17| RHa:
ついでに、.texから直に.pdfを作るスクリプトmkslideを作りました。
mkslide
スライドのTeXファイルを用意したらあとは、
% mkslide hoge.tex
です。landscape専用なので、スライド風なものだけに使ってください。
sample/のMakefileが
.tex.pdf:
で始まるようになった…(笑)
2010/08/30 14:48:49| 高橋: (Re: 2010/08/30 12:35:44| RHa)
ps2pdfxありがく使わせていただきます。Makefile修正して、evinceで確認。おお、Memoの文字化けが治った!
2010/08/30 12:35:44| RHa:
色々と問題ありますすなぁ。
evince、すごくいいんだけど、dingフォントが表示されない。
で、ps2pdfに頼らずに、gsにた〜くさんオプション渡して、pdfwriterデバイスにpdfを出力してみることにした。
ps2pdfの代替のps2pdfx
ps2pdfx
おみごと、これをps2pdfの代わりに使えば、お見事、evinceでもdingフォントが見れるようになります。
不完全なので、まだ慎重に使ってください。今書き直します。
+ 2010/08/30 14:35:05 追記
書き直しました。これで、ps2pdfwr (wrapper)、そして、その中でgsが呼び出されます。
ps2pdfx
おい、オプション渡してるだけじゃないか。そうです。
2010/08/30 12:21:47| 高橋:
evinceにてpstVerbを用いた透過の表現を見てみた。sampleのものも見たけれど、自分でやってもちゃんと透過
できている。なんて、裏技だ……
2010/08/30 11:24:38| ym: (2010/08/30 10:41:50| RHa)
実験用プログラムですが、TPMの値が負値やPmaxの値を越えてしまっています。
再分配のアルゴリズムが不完全であることが原因と考えられます。
否定の時の他の要素への再分配のアルゴリズムが不完全で困っています。
2010/08/30 10:47:54| 高橋: (Re: 2010/08/30 10:33:48| RHa)
ありがとうございます。gvの動作が明らかに軽くなりました。
2010/08/30 10:41:50| RHa: (Re: 2010/08/30 03:00:53| ym)
研究の目標
タイトル改め、プレイリスト — 「静的」と「動的」
などとして、静的プレイリストって何?動的プレイリストって何?を書く。
プレイリスト生成エンジン「Jukebox」のところが派手に強調されて入れ歯、それが研究の目的だということは一
目瞭然で分かる。
目標 … 達成数値、達成仕様、測定可能なもの。
目的 … 研究の動機付け、要請
あえて言えば、これは目的ですが、とにかくそんな漠然としたタイトルは意味ありません。
矢印は、点と点をつなぐ矢印もあれば、点と面、面と面をつなぐ矢印があります。もちろんそれだけではありま
せん。点・辺・面・ボリューム・スペース… それが数学の世界の幾何学であり、あとは全ての絵が、その幾何
学のテクニックを拝借しているにすぎない。原因と結果であれば、原因というボリュームから結果という面が生
じたわけで、それを矢印でかりにもつないでいるのです。何をどういう目的でつないでいるのかを明確にしてく
ださい。意味なかったら矢印なんて使わない方がいい。
確率ベクトルのゆらぎ
これも「思考実験」してみれば直ぐに分かりますよね。
α=0.2、β=0.2、Pmax=0.5として、スキップ一切なしでどういう挙動をするか。
まぁ、僕は、固有値ベクトル周辺でゆらぐ、と予想します。その根拠は、α=0、β=0なら固有ベクトルに収束す
るからです。
なので、「一定の値にならない」という否定的な表現ではなく、「固有ベクトル周辺でゆらぐ」と肯定的に書き
ましょう。それと上の枠が根拠、下の枠が観察事実。「根拠」と「観察事実」が一枚のスライドの中に現れたら、
どうそれを「視覚構造化」しますか。
全体的に、三曲だと、あまりにも寂しい。もう少し曲数を増やせますか?
ただ、絵は、三曲だろうが六曲だろうが、同じ形式で表現次元数を増やすことはできますよね。次元に関してス
ケーラビリティがある訳です。問題は、実験用のプログラム、そちらはどうですか?
2010/08/30 10:33:48| RHa:
EPSはばかでかい。EPS2はそうでもない。images/ディレクトリでMakefile書いてるひとは、
.jpg.eps: - gm convert $< -resample 150x150 $@ + gm convert $< -resample 150x150 EPS2:$@
これだけの変更をするといい。この解像度だったらJPEGより小さい!
gvの動作も超軽快になりますよ!
ただし、これも、僕の記憶でいろんなことがある。EPS2形式の画像をTeXに貼り付けても印刷がうまくいかないこ
とがあった。ただ、これも古い話。今、やってみたら問題なく印刷できた。
EPS2はPDFと一緒で内部でDCT符号化しています。
2010/08/30 09:13:01| 高橋: (Re:2010/08/30 08:56:43| RHa )
了解です。
> 2010/08/30 03:17:04| RHa
evinceいいですね。軽快です。
2010/08/30 08:56:43| RHa:
また歯医者に寄ってから行きます。
2010/08/30 03:17:04| RHa:
報告!
evinceで日本語通った。あれ、さっきはだめだったのに…
おまけに、 フルスクリーンモードにしていてもwatch fileになる 。動作は軽快。
日本語は通るし、色の問題もない。
安心して、透過色使えますよ!
evinceがいい。なぜ今まで気がつかなかったんだろう?!?!?!?!? これを使わない手ないだろ!
2010/08/30 03:09:32| RHa:
epdfviewっての入れてみたんだけど、これいいかも。
もちろん、下で言った透過色使用時の問題もない。やはりあれはacroread9.3の問題だ。
自動(watch file)ではないけれど、Ctrl-Rでリロードができる。日本語も通る。
ただ、フルスクリーンが完全にフルスクリーンにはならず余白が残る。これじゃ学会レベルでプロジェクタース
クリーンのプレゼンでは使えない。
2010/08/30 03:00:53| ym:
To: RHa
「本研究の目標」と「確率ベクトルのゆらぎ」のイメージを更新しました。
確認をお願い致します。
2010/08/30 02:13:15| RHa: (Re: 2010/08/30 01:34:43| RHa)
日本語対応のPDFビューワー、今acroreadしか入ってないんだけど、日本語表示できない中で、xpdfとevinceでは
色はへんになりません。どうやらacroreadの問題みたい!
xpdfはもちろん日本語対応版あるんだけど、Karmicでは入れられない。入れたらさざ波フォントまわりでシステ
ムまた設定し直さなきゃならない。直すの大変だから日本語版xpdfはKarmicでは入れないことにしてる。
他に日本語対応のPDFビューワーってないのかなぁ。evinceも色はへんにならないけど、日本語ダメだった。これ
も設定の問題かもしれないけれど…
+ 2010/08/30 02:21:15 追記
一つ方法があった 。supp.pdfを、
% gm convert -density 600x600 supp.pdf -geometry 1800x x.jpg
% gm convert x.jpg.* -resample 600x600 suppx.pdf
で作ったsuppx.pdfは綺麗です。完璧です。ファイルサイズはでかいけど(笑)。acroreadで問題なく見れます!
もちろんベクターグラフィクスでなくなるけど、プレゼン資料程度には問題ない。
% ls -l supp*.pdf -rw-r--r-- 1 rhara users 185805 Aug 30 02:08 supp.pdf -rw-r--r-- 1 rhara users 7333447 Aug 30 02:20 suppx.pdf
PDFファイルの問題ではな、acroreadの問題だったとは!!!
% uname -a Linux millet 2.6.31-14-server #48-Ubuntu SMP Fri Oct 16 15:07:34 UTC 2009 x86_64 GNU/Linux % cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=9.10 DISTRIB_CODENAME=karmic DISTRIB_DESCRIPTION="Ubuntu 9.10" % acroread -v 9.3.3
2010/08/30 01:34:43| RHa:
\usepackage{pstricks-add}
すれば、
\pscircle[fillstyle=transparent,transpalpha=0.5,fillcolor=red](0,0){2}
みたいなことが書けるようになります。pstricks-addはすごいパッケージなんだけど、良くも悪くも実験場なの
で、デフォルトでは含めないことにしますが、ぜひ使ってみてください。また、新しい世界が開けること間違い
ありません。
で試してみたら、これでも、これを使うスライド一頁だけ色の階調値が変わってしまいます。setopacityalphaと
一緒です。中身は見てませんが、内部で同じことやっているんでしょう。
(Re: 2010/08/30 00:59:53| 高橋)
スライドの全体的な雰囲気が違うスライドができてしまいますが、opacityの設定でいいこともできます。いろん
なテクニックを使ったり、事前知識として持っておきましょう。
僕が思うに、PDF1.4、PDF1.5、… に対応する他のPDF生成ソフトを使えば、この不具合は解決できるのではない
かと思っています。今、生成したPSファイルの中身も見てみます。
2010/08/30 01:59:22 追記
いやぁ、わからないやぁ〜。不思議。PSファイルの中にsetopacityalphaがいるんだけど、どうしてそこに、…
どうしてそれで円が半透明になるの… PSのコマンドじゃないから、PDFに変換してどこかにいなくなっちゃうん
だよなぁ。バイナリdiffでもとって追求するか。
2010/08/30 00:59:53| 高橋: (Re: 2010/08/30 00:34:13| RHa)
了解しました。今のところ、枠線の色を変えるなどして代用しています。見栄えなどの問題もありますが、他の
方法で表現する方向も視野に入れておきます。
2010/08/30 00:47:21| RHa:
psclipを使って三つの図形の色を混ぜるのをステップ解説しています。supp.tex参照。
図形のオプション引数の内容をかえなきゃいけないから、これを一般化マクロにするの難しいなぁ。
でも、これは「色」の色混合アルゴリズム。光の色混合アルゴリズムってどうすればいいんだ?
pstricksまたはxcolor.styで使えるようになる redgreen なる表現はちゃんと茶色になる。黄色になるわけ
じゃない。
そもそも、「色」の色混合の方が自然なのに、デジタルライフを長く続けてきた病で、光の色混合アルゴリズム
の方が自然に感じてしまう。赤と緑と混ぜたら何色ですか?黄色!って答えちゃうんだよね。
2010/08/30 00:44:12| ym: (2010/08/30 00:41:06| RHa)
肯定の時の場合は比較的簡単に求められましたが、否定の場合でつまずいています。
できたら定式化しておきます。
2010/08/30 00:41:06| RHa: (Re: 2010/08/30 00:29:40| ym)
再分配のロジックを変更できるように、予稿では、明示的な方法は書かず、+、−の上にアスタリスクがついて
いる演算記号を使ったのでした。Redistも使いましたね。再分配についていい方法があったら、きちんと定式化
しておいてください。
2010/08/30 00:34:13| RHa: PDF1.4の透明度の設定はページ全体に副作用を与える!(Re: 2010/08/29 22:04:27| RHa)
写真画像の色がへんになってしまうので、PDFの「超裏技」は控えめにすることにしました。jot.clsをほぼ元に
戻しました。
\pstVerb{... .setopacityalpha} を使ったスライドは、たとえ部分的に適用することを意図したものであって
も、副作用でページ全体の画像の階調値の扱いが変わってしまいます。全体の色が変わってしまいます。原因は
まだ分かりませんが、我慢して使ってください。
結局、この裏技はあまりお勧めできません。他の方法を探ってみます。
2010/08/30 00:29:40| ym: (2010/08/29 23:47:28| RHa)
> 0を下回ったり、Pmaxを越えたりしてしまうのは、なんとかならないかなぁ。プログラム的には難しくないでしょ
う。
この問題を解決するために再分配の方法を変えるとする。
例えば
(0.05 0.6 0.35)
という確率ベクトルがあるとします。
0.6を肯定し、0.7にするとします。
0.6-0.7なので、分配する値は-0.1になります。
このまま二つの要素に分配すると、0.05が0になってしまいます。
そこで、多いところには多めに分配するようにします。
0.05 – 0.05 / (0.05 + 0.35) * 0.1 = 0.0375
0.35 – 0.35 / (0.05 + 0.35) * 0.1 = 0.2625
この様に分配すれば、0以下になることはないはず。
逆に否定の場合、確率の高い要素に少なめに分配したいのだが、どうすればいいんだろうか。
2010/08/29 23:47:28| RHa: (Re: 2010/08/29 21:10:00| ym)
0を下回ったり、Pmaxを越えたりしてしまうのは、なんとかならないかなぁ。プログラム的には難しくないでしょ
う。
ただ、これは曲数が少ないから起こる話で、例えば曲数が100曲あったとすれば、多分Pmaxは2/100=0.02程度だか
ら、どこかの確率が0.005増減したってすごいこと。それを他の99曲で等分配するのだから、再分配は一曲あた
り±0.005/99=±0.000051…ってことなんだよね。
2010/08/29 23:40:05| 高橋: (Re: 2010/08/29 23:28:36| RHa)
そうですね(苦笑)順次、外していきます
2010/08/29 23:28:36| RHa:
一枚の手書き原稿をほぼ絵にできた人は、その手書き原稿の方をslide.texから外してください。よろしく。なか
なか紛らわしい(苦笑)。
2010/08/29 22:04:27| RHa:
また、jotclassを再度git pull ; make installしてください。ちょっと色具合を変えました。
\pstVerb{... .setopacityalpha} ちょっとへん。
色がビビッドになります。多分こっちが本当の色です。
ただ、副作用で、張り込んだ画像のコントラストが異常に高くて、明るい色が白く飛んだり、濃い色が黒くつぶ
れてしまいます。色補正のガンマ値が高くなっているんだよなぁ。今原因・対応策を調べています。
これって、ディスプレイの問題なのか、カラーエンジンの問題なのか、ちょっと別のディスプレイでも見てみる
必要がある。何か感想があったら書いてください!!!
PDFのアルファブレンディングに頼らなくても、図形の色まぜはそんなに難しくありません。
三つの図形の色まぜ、sample/supp.texにて解説。二重に \psclip したり、…
2010/08/29 21:10:00| ym:
To: RHa
パターン行動シミュレーションの(1)から(4)まで、実験結果を載せました。
(1)はTPMの値がPmaxを越えてしまっている。
これは、確率の再分配を単純に等分にしているからかもしれない。
(4)は結果がわかりやすくない。
曲数が多くなってしまったからかもしれません。
2010/08/29 20:51:33| RHa: (Re: 2010/08/29 18:44:08| nk)
作法?CCでしょ。自由でしょ。
あなたは、以下の条件に従う場合に限り、自由に
「複製・頒布・展示・上演・演奏・口述・上映・公衆送信することができる」
「二次的著作物を作成できる」
条件:
表示: あなたは原著作者・実演家のクレジットを出さなければなりません。
非営利: あなたはこの作品を営利目的で利用してはなりません。
継承: もしあなたがこの作品を改変、変形または加工した場合、あなたはその結果生じた作品をこの作品と
同一の許諾条件の下でのみ頒布することができます。とすれば、学会に著作権を委ねる学会の予稿には無理ということですね。それと頒布を目的としない発表スライ
ドはこの限りではないでしょう。
2010/08/29 18:44:08| nk: (Re: 2010/08/29 17:47:50| RHa)
了解しました。(Makefileを覗いてみたら make ps ができないことに気づく)
画像に関しては、一応CC(Creative Commons)の画像を集めているのですけれど、
使用方法に作法とかありました?
よくわからないので、今のところ後で探せるようにurlは保存しています。
2010/08/29 18:13:22| 高橋: (Re: 2010/08/29 18:02:48| RHa)
いくつかパターンを提示するんですね。試してみます。
趣向に合った画像というのはすぐに見つかるかわからない(人工的なケースはすぐにできますが)ので、スライ
ドを形にすることを主眼においてます。同様に、スライドの内容も装飾などは控え、極力下書きを形にすること
を目標にしています。
左右反転と階調値反転の2つの場合の結果をアップしました。左右反転は微妙なところですが、階調値反転はわ
かりやすいですね。まあ、階調値を反転させただけだから、それらを足し合わせて2で割れば一律半分の値にな
るのは当然なのか。
2010/08/29 18:02:48| RHa: (Re: 2010/08/29 15:22:07| 高橋)
あ、はい。いくつかの例があった方がいい。似たもの同士、ちょっと違うもの同士、異なる際立った特徴をもっ
た二つの画像、…
典型的な人工的なケースも考えてみてください。画像Aとその反転画像A’だったら、どうなりますか?
2010/08/29 17:54:14| 高橋: (Re: 2010/08/29 17:44:36| RHa)
かかりますね。自分のMakefileもps2pdfにしました。
2010/08/29 17:47:50| RHa:
To: nk
少なくとも、 make ps 、 make pdf 、 make clean だけは残しておいてね。当方は make clean ; make
できればいいので、画像の依存関係などは無理して全部書く必要ありません。
2010/08/29 17:44:36| RHa:
% gm convert hoge.ps fuga.pdf
時間かかるよね。
2010/08/29 17:34:56| 高橋: (Re: 2010/08/29 17:23:44| RHa)
そういう制限も念頭において、使い分けないとですね。それにしても、ほんとに奥深い世界だなぁ……
2010/08/29 17:23:44| RHa: (Re: 2010/08/29 17:14:24| 高橋)
後ろがEPSを貼り付けたようなものだと、psclipで色付けできない。その場合はアルファブレンディング。
普通に、pstricksで図を描いているのであれば、どこでもpsclipで色領域を作って、文字や線画の背面にでも置
いておいてあげればグーな訳です。 \psclip 簡単だよ。でもそういうのも紙の上に目標とする図形の下書きを
した方がいいね。
\psclip とよく一緒に使うのが \pscustom です。これはいわゆるパスによる線画を作ります。例示では安直
に楕円の輪郭を使いましたが、 \pscustom 使ってパスを描ければ領域の形にはるかに自由度がでてきます。
2010/08/29 17:14:24| 高橋: (Re: 2010/08/29 17:00:54| RHa)
個人的には\psclipをうまく使えたらという気持ちです。pdfにしないと確認できないのは痛いですし……
問題は使いこなせるか、その表現を使うべきか、という2つだな……
2010/08/29 17:00:54| RHa: psclipで色領域の混ざりを表現する
アルファブレンディングはそもそも薄い透明なインクを上からかぶせているような透明色を作り出すので、あま
りビビッドな発色にならない。時と場合によりけりなんだけど、背面にビビッドな色領域を作りたいとき、
psclipを使う。
sample/supp.tex 6ページで解説。
この方法はもちろん、PSに対応している。
2010/08/29 15:54:32| 高橋: (Re: 2010/08/29 15:41:49| RHa)
まさに裏技ですね……ありがとうございます。ただ……supp.texのどこにもpstVerbの記述ないんですが、push
ってされました?
すみません。今、存在を確認しました。
psとpdfで見比べると、一目瞭然ですね。1つ問題が解決しました。ありがとうございます。
2010/08/29 15:41:49| RHa: PDFでアルファブレンディング
色の重なっている部分をどう処理すればいいかわからないというコメントを見ましたが、
PDFの「超裏技」 があります。 アルファブレンディング できるのです。
opacityalphaのデフォルト値は1、不透明です。0は完全透明です、透明 無職 無色です。
半透明な何かを描きたかったら、 \pstVerb マクロで、一時的アルファ値を設定して半透明にします。
\pstVerb{0.5 .setopacityalpha}%
...
\pstVerb{1 .setopacityalpha}%
%もとに戻しておく \pstVerbコマンドの後ろは%をつけて行末までコマンド無効にしましょうただし残念ながら、PSはアルファブレンディングに対応していません。sample/supp.pdfを作って見てみてくださ
い。これで表現力アップはかれるかな!?
+ 2010/08/29 15:59:29 追記
かつては僕は「PS命」だった。で、このテクニックを長らく封印してたんだが…
今やPDFが主流になりつつある。で、晴れてこの封印を解くことに…
ちゃんきよはあまりうまくいかないので、supp.pdfの5ページ目を見てください。
2010/08/29 15:22:07| 高橋: (Re: 2010/08/29 15:07:30| RHa)
画像による平均の違いの図の部分でしょうか?了解しました。
2010/08/29 15:07:30| RHa:
To: st
画像は変えないでください。追加してください。
2010/08/29 14:30:16| 高橋: (Re: 2010/08/29 14:17:46| RHa)
失礼しました。たった今追加してpushしました。
2010/08/29 14:17:46| RHa:
今度はstの方で不具合。
inc/mokuteki-slide.incがコミットされていないようだ。
それとも、…
inc/mokuteki.incというのはあるけれど…
2010/08/29 14:10:28| RHa:
下のパッチもまだ当たってないようなので、勝手に修正させてもらいました。
nkのストーリでは、「馴化」ですか?
2010/08/29 14:08:56| nk: (Re: 2010/08/29 11:57:29| RHa)
すいません、imagesのサブディレクトリのepsを作成する処理をimagesのMakefileに書き忘れていました。
2010/08/29 11:57:29| RHa:
nkのスライドmakeが通らない。
- .tex.dvi: INCFILES + .tex.dvi: $(INCFILES)
だけでもダメなようだ。後回し。
Apache/2.2.15 (FreeBSD) PHP/5.3.2 with Suhosin-Patch mod_ruby/1.3.0 Ruby/1.8.7(2009-12-24) Server at www.kibug.org Port 80