Post

Visualizzazione dei post con l'etichetta Computer

電子本閲覧アプリ

今まで使った電子本閲覧アプリについて書きます。 特に指定がなければアプリは iOS 用のものです。 Kindle 最も多く使っています(主に洋書読書用)。 日英以外の洋書もないことはないです。 テキストのコピーは通常可能。 独自の辞書と翻訳(Bing?)、読み上げ機能(翻訳パネルより)がついています。 辞書と翻訳はあまり良くない気がします(辞書は使いづらく、翻訳は意味不明な結果が多い)。 複数デバイス間で同期します。 Kindle Cloud Reader (ブラウザアプリ) Kindleアプリで読めてもこちらでは読めないコンテンツも多いです。 テキストのコピーは不可。 辞書や翻訳、読み上げ機能はない。 ハイライトは黄色のみ。 ハイライトと最後に読んだ箇所はアプリ版と同期する仕様ですが不安定。 Books 有料コンテンツはそれほど充実していません。 和書以外のコンテンツも(韓国語を含め)ないことはないです。 テキストのコピーは可能ですが、都度書誌情報も一緒にコピーされてきます。 辞書や翻訳、読み上げ機能は iOS のもの。 辞書は活用された韓国語の単語を直接引くことができないものの、代わりに翻訳が使えます(たまに意味不明の場合は外部の翻訳ソフトを使用)。 honto リーダー 和書が充実しています(外国語の本はたぶんない)。 直接のテキストコピーは不可ですが、コンテンツによっては選択箇所のWeb検索ができるので、ブラウザの検索窓経由でコピーすることが可能。 辞書引きは iOS の辞書を利用しています。 Acrobat Digital Edition 以前、外国の電子書店で購入した epub (Adobe DRM付き)を読むのに利用していました。 一時障害が発生してコンテンツを読めなくなったので、下記の PocketBook に移行しました。 テキストのコピーは不可。 翻訳、読み上げ機能はない。 辞書は iOS のもの、デフォルトのテキスト選択で句読点を含んでしまい、含まないように調整しないと辞書が引けないのでやや面倒。英語、イタリア語、ドイツ語などは活用していても引ける。 PocketBook 外国の電子書店で購入した epub (Adobe DRM付き)を読むのに利用しています。 テキストのコピー可能。 辞書...

久しぶりのLaTex

Overleaf にふれる機会があったので、久しぶりに LaTex で論文を作ってみた。引っかかった点をいくつかメモしておく。 ヘッダー プリアンブルに \usepackage{fancyhdr} を入れ、本文に \pagestyle{fancy} を入れる。 最初のページだけヘッダーを2行にしたいので \thispagestyle{fancy} \rhead{最初のページのヘッダー1行目\\ 最初のページのヘッダー2行目} とする。 デフォルトでヘッダーと本文の間に線が入ってしまうので \renewcommand{\headrulewidth}{0pt} で削除 2ページ目以降のヘッダーは、2ページ目以降で \rhead{全体のヘッダー} \lhead{} とする。 \lhead{} は、なぜかヘッダーの左側に入ってしまう節の題名を消すためである。 表 セルの結合を行うためにプリアンブルに \usepackage{multicol} を入れる。表の中のセルの結合の指定は例えば \multicolumn{6}{|c|}{...} などとする。 セルの中の改行は こちら を参照のこと 列の高さ調整には \rule{0pt}{3ex} といった「支柱」を用いた。 その他 表の部分だけ1段組にしたかったが、かなり面倒なことになりそうなのであきらめた。 図のキャプションに改行を入れるのも面倒になりそうなので、キャプションのマージンを \setlength{\captionmargin}{...pt} で設定してごまかした(プリアンブルに \usepackage{caption} が必要かもしれない)。 脚注に URL を入れたら URL の中のアンダースコアでエラーが出たので、プリアンブルに \usepackage{url}) を入れ、URL を \url{....} で囲った。また、 箇条書きをカスタマイズする ために ennumerate.sty を使った。 感想 ほとんど任意の調整の度にウェブを調べて解決策を探すのはビジネス的にはまったくの時間の無駄である。しかし解決の度に脳に報酬が与えられるので、麻薬的な効果はあるのではないか(そして中毒者が大量に発生しているのではないか)と推定される。 ところで最近PCを買い替え、新しい Mac で...

XServer上の MediaWiki でボット(pywikibot)を動かす

Immagine
基本的なやり方は こちら に書いてあるのですが、手間取ったので記録を残しておきます。 ボットアカウントを対象となる MediaWiki に作ります。 対象となる MediaWiki に管理者権限でログインします。 Special pages から Bot passwords をクリックします。 再度認証(ログイン名+パスワード)情報を入力します。 Create a new bot password Bot name: で作成する Bot の名前を入力して「Create」ボタンを押します。 Bot に与える権限のチェックリストが現れるので、適宜チェックして「Create」ボタンを押します。 作成される Bot のフルネームは、"あなたのアカウント名@Bot名" という形になり、パスワードが発行されるので、控えます。 Pywikibot 環境を作ります。 ※私が使ったのはMediaWiki があるサーバーです。 pip install pywikibot で OK です。 Family file を作成します。 pywikibot ディレクトリ内にある generate_family_file.py を用いて新しい family file を作ります(いくつかの質問に答えてください)。 ./pywikibot/families ディレクトリ内に family file ができたことを確認します。 user-config.py を作成します。 古い user-config.py があればリネームによりバックアップします。 pywikibot ディレクトリ内にある generate_user_files.py を用いて新しい user-config.py を作ります。 いくつかの質問に答えてください。 このとき、1 で作ったボットアカウントの以下の情報を順に聞かれます。 あなたのアカウント名 Bot名 パスワード user-config.py ができたことを確認します。 python を起動し、以下のスクリプトを実行してみます。 >>> import pywikibot >>> site = pywikibot.Site() >...

Aipo に Let's Encrypt の SSL証明書を適用

前回、 Aipo の StartSSL 証明書更新の話 を書きましたが、StartSSL は不正認定されてしまい、Chrome などからアクセスできなくなったので、無料かつ正当な(とされる) Let's Encrypt の証明書に入れ替えました。やはり少しハマったので記録を残します。 Aipo への Let's Encrypt SSL 導入については、 こちら に記事があるのですが、Apache の稼働を前提としており、Tomcat のみの Aipo の標準的な環境ではうまくいきません。Let's Encrypt SSL の導入を自動的に行う certbot-auto というユーティリティが httpd (Apache) の存在を前提としているようで、動かないのです。 代わりに、やはり Certbot が提供している certbot というユーティリティで手動で証明書を生成します。手順は こちら(英語) (CentOS 7 の場合)です。具体的には $ certbot certonly --webroot -w /usr/local/aipo/tomcat/webapps/ROOT -d ドメイン名 とします。 ここで、/usr/local/aipo/tomcat/webapps/ROOT は、Webアプリのルートで、外部からドメイン名の URL に http(s) アクセスする際のルートディレクトリです。 このコマンドがうまくいけば、/etc/letsencrypt/live/ドメイン名/ に pem 形式の証明書ができます。Tomcat が使う証明書はキーストア形式なので、段階をふんで変換します。 PKCS#12形式への変換 $ cd /etc/letsencrypt/live/ドメイン名/ $ openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out ssllets.p12 Enter Export Password: Verifying - Enter Export Password: キーストア形式への変換 $ /usr/local/aipo/jre/bin/keytool -importkeystore -destkeysto...

Aipo用 StartSSL 証明書更新(2017)

Immagine
2017-02-20 追記 Chrome から AIPO に接続しようとすると「保護されていない通信」と言われるので、調べてみたところ、StartCom 社の不正のため Chrome では StartCom の SSL を認めなくなったようです。 https://ja.wikipedia.org/wiki/StartCom_Certification_Authority ということで、残念ながら別の証明書を探す必要がありそうです... </追記> Aipo を入れているサーバーの StartSSL から取得した証明書の期限が切れるというお知らせが来たので、更新を試みたところかなりはまったので、来年のための忘備録も兼ねてメモ まず、Google で検索して以下のページを見つけました。 2016年版 1年間無料のStartSSLの証明書を更新する方法 基本的にはこの手順でいけるのですが、StartSSLの Certificates Wizard の画面が若干変わっています。 何だかわからないので、Leave a message に質問を投げてみましたが、要領を得ません。 無理やり赤字の DV SSL Certificate をクリックすると、次の画面が出ます。 最初の Finish をクリックすると次の画面が出ます。 domain に認証すべきドメイン名を入れて Continue を押すと、ドメインが validate されます。 先程の画面に戻り、Apply をクリックすると(上のQiita記事にもある)次の画面になります。 ここにAipoサーバーの keytool コマンドで作った csr ファイルの中身を貼り付けると証明書が発行されるので、それをやはり keytool で登録すればよいのですが、なかなかうまく行きませんでした。 結局 Aipo の SSL 通信についてのマニュアル を最初からなぞることで、なんとかなりました。おそらく、一番の問題は、keystore ファイルが2箇所にあって、どちらを更新すべきかわからないうちに作業をはじめてしまったことだと思います。最終的にうまくいった場所は、マニュアルにあるようにデフォルト位置の /root/.keystore で、あとで混乱しないように ...

OpenCV Java API で Gabor Filter

Immagine
OpenCV 3.0 Java API で Gabor Filter を動かしてみました。 以下サンプルソースの下に説明を書きます。 import org.opencv.core.Core; import org.opencv.core.CvType; import org.opencv.core.Mat; import org.opencv.core.Size; import org.opencv.highgui.Highgui; import org.opencv.imgproc.Imgproc; // // Applying the Gabor filter to the input image. // class GaborFilter { double height = 10; double width = 10; double sigma = 1.4; double thetaDeg = 135; double lambda = 4; double gamma = 1.0; double psiDeg = 0; int ktype; public void apply() { System.out.println("Applying the Gabor filter"); Size ksize = new Size(height, width); // Reading an image Mat image = Highgui.imread( "lena.png" ); double theta = thetaDeg*Math.PI/180; // radian double psi = psiDeg*Math.PI/180; // radian // Making the source black and white. Mat mat1 = new Mat(image.rows(), image.cols(), CvType.CV_8UC1); Imgproc...

3Dモデリング(X3D)

Immagine
SigVerse で X3D のモデルを使うということで、まずモデリングツールでモデルを作ってみることに。 いろいろ試した後、 AutoDesk123 でモデルを作ってみました。 ここまでやったところで左右を対称にする方法を調べるのが面倒になったので、X3D をテキストファイルで直接書くことにしました。 それから、ティルトローターはあとあと面倒そうなので(アポロ)宇宙船風のスラスタで代用することに。 ビューワーで見ると、不透過のレンダリングがうまくいっていない?ようですが、今は形を決めるだけなので、とりあえずこれでOK。 なお、胴体は Extrusion という機能を用いた「モノコック」です。 参考) 使ってみたX3Dビューワ(OS X用のフリーソフト) FreeWRL view3dscene Instant Player MeshLab これは正しいはずの X3D が gemetry がないと言われて開けない... X3D参考サイト Getting Started with X3D 本家サイトのイントロページ X3D  Geometry3D component X3D grouping and transforms このサイト(Wiki)には他にも X3D 関係のページがある(要検索)。 VRMLリファレンス&サンプル VRML ファイルの概要 X3DはVRMLのXML版なので、各要素については VRML の説明を見て理解することができます。VRML のほうが(日本語を含めて)情報が多いようです。 なお、SigVerse で使う HRP 形式のファイルは X3D 準拠とされていますが、Geometry 3D 要素の種類を追加しているようで(何かのバージョンが違う?)、ビューワーに X3D として認識されないようです。

VMWare Fusion, Ubuntu, Windows & SigVerse

Immagine
ここのところ、社会的知能発生学シミュレータ(ロボットシミュレータ) SigVerse を MacBook Air に入れようとしています。 4GB RAM + VMWare Fusion + Ubuntu + Windows 7 の組合せを試みたのですが、結論からいうと、なんとか動くけれども実用にならないようです。 前回 は Ubuntu を MacBook Air の外付けハードディスクに導入してみたのですが、結局 SigVerse のクライアントは Windows のアプリで Windows が必要なことに気がついたため、Ubuntu と Windows を VMWare Fusion で動かしてみることにしました。 以下しばらくその顛末です。 VMWare Fusion 5 を入手(Amazon で 4,209円) インストールメディアとして USB メモリーがついてくるので手間なし Ubuntu を前回ダウンロードしたイメージからインストール ※簡易インストールだと日本語化されないらしい。 メインの SDD 内にインストールされてしまうので、以下の手順で外付けハードディスクにデータを移動 仮想マシンフォルダ(./Documents/Virtual Machines.localized)を外付けハードディスクにコピー 元の仮想マシンフォルダをリネーム Terminal コマンド ls -s で、外付けハードディスクの仮想マシンフォルダに同名のシンボリックリンクを張る。 VMWare Fusion 6 への無料アップグレード(キャンペーン中) Windows 7 のインストール Windows 7 Professional 64 bit の DVD を 5,000 円(OEMバンドル版のバラ売り)で入手(@楽天市場ソフトマーケット) ⇒もののみごとに 海賊版 に引っかかってしまいましたね。  反省と注意喚起のために一応残しておきます(2013-11-21)。 Mac mini の DVD ドライブを Bluetooth 共有ごしにアクセスしようとしたものの、OS のインストールメディアは認識しないということなので、Mac mini のディスクユーティリティで、DVD のディスクイメージを作成 これを Bluetooth ご...

Macbook Air に Ubuntu

Ubuntu を Macbook Air の外付けドライブに(USBメモリーを使って)導入しました。 手順をメモしておきます。 手順: 外付けUSB HDD (500GB Buffalo製) を購入 USB メモリ(8GB)を購入 Macbook Air に CD/DVD ドライブがないため、インストーラのブート用 ※13.04 は 1GB あれば入るっぽい。 一応 USBメモリに GUID フォーマットでパーティションを作る(不要かも)。 Ubuntu Desktop 日本語 Remix(ubuntu-13.04-desktop-i386.iso)をダウンロード http://www.atsuhiro-me.net/pc/os/ubuntu-usb に従い、dd コマンドで iso イメージを USBメモリにコピー 具体的には $ diskutil list で USBメモリのディスク番号を調べ、 $ sudo dd if= ubuntu-13.04-desktop-i386.iso  of=/dev/rdisk3 bs=1m でコピー(この場合ディスク番号 3) ※ ここで既存のドライブを選んでしまうと内容を完全に破壊するので注意! ※ dmg への変換は必要ありませんでした。 Mac を USBメモリ を挿したまま Option を押しながら再起動し、「Windows」ドライブを選ぶと Ubuntu が起動 (ちょっと感動) 以下基本的に http://taka8aru.blogspot.jp/2013/05/mac-os-xusblinux.html に従った。 OS X を再起動 ディスクユーティリティで外付けUSBディスクのパーティションを切る。 ※0.03GB を rEFIt用、100GB を UBUNTU 用、その他は FAT としました。 rEFIt をダウンロード、.dmg をマウントして、その中の efi フォルダを外付けUSBディスクの refit のパーティションにコピー ターミナルを開いて以下を実行 $ cd  /Volumes/refit/efi/refit $ ./enable.sh 先ほど作った UBUNTU イメージの USBメモリ を挿して Option を...

Kinect 接続

Kinect を買ったので、Mac (Mac Book Air OS X Mountain Lion) につなげて OpenNI を入れてみた。 最初、Macports でインストールを試みたものの、libusb がなぜかうまく入らない ( Error: org.macports.configure for port libusb returned: configure failure ) ので、homebrew で再試行してみた。 homebrew をインストールし、brew doctor を実行して WARNING がなくなるまで処理、一応、install.sh でインストールしたものは、install.sh -u で アンインストール した後、こちらの手順に従った: http://www.cyber.t.u-tokyo.ac.jp/~take/blog/kinect/install-openni-with-homebrew.html ※libusb は(アンインストールしておけば) brew install openni でインストールされる。 とりあえず Kinect に接続して OpenNI のサンプルが動くようになった。 Processing のサンプルはまだエラーが出て動かないが、それについては後日試みることに...

Redmine + Subversion インストールの記録

お名前.com VPS (CentOS 5.3) に Redmine + Subversion を導入をしたのでメモを書いておきます。不慣れなので1週間以上かかってしまいました。参考にさせていただいたサイトの作者には深く感謝いたします... Subversion のインストール 概ね次のサイトの指示に従った。 VMwareFusion/CentOS5/15.Apache+Subversionインストール CentOS4/CentOS5 - subversionの導入 最初 yum を導入しようとすると、rpm から 「ファイル ... (パッケージ .... から) は、パッケージ ... からのファイルと競合しています。」といった警告が出たので、yum を使わずに subversion を make しようとしたが、コンパイルエラーが出て行き詰ったため、強制的に(rpm --force オプションで) yum をインストールして、subversion のインストールを行った。 お名前.com の VPS では apache は導入済みで、設定ファイルは /etc/httpd 下の conf および conf.d フォルダにある。subversion 関連の設定は conf.d 下の subversion.conf に入れればよい。 例) LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so Include conf/extra/httpd-subversion.conf <Location repos> DAV svn SVNParentPath /var/www/svn SVNAutoversioning on <Limitexcept GET PROPFIND OPTIONS REPORT> SSLRequireSSL </Limitexcept> </Location> ※SSLRequireSSL は http でのアクセスを禁止するためのディレクティブ ※お名前.com VPS では、一応 OpenSSL のサービスが動いている。 ※...