exifをいじってロスレス画像回転
久しぶりに投稿を
ちょいと案件で画像をロスレスで回転できないかなってことでやってみたのでメモ
調べてみたところ、画像のexifをいじるのはexiftoolってのが便利みたい。
他にもpelとかあるけど、どうもコードが長くなる傾向が。
www.sno.phy.queensu.ca
lsolesen/pel @ GitHub
結果から言うとexifでのロスレス回転はできるものの、chromeなどのブラウザではimgタグで画像を表示する際はexifの回転情報を反映しないとのこと
#新規タブで画像のみを開く場合はOK
ってことで、現状ではPHPなりconvertなりで画像を劣化させながら回転されるしか無いみたい。
縦と横が8の倍数であれば、ロスレス回転も可能だが、スマホのカメラなどの画素数は8の倍数なんだろうか。
maplesikou.seesaa.net
簡単なソースコード
<?php /* 1: // 通常 2: // 水平反転 3: // 180°回転 4: // 垂直反転 5: // 水平反転、 時計回りに90°回転 6: // 時計回りに90°回転 7: // 時計回りに270°回転(反時計回りに90°回転) 水平反転 8: // 時計回りに270°回転(反時計回りに90°回転) */ $rotate_id = 3; $filename = "image.jpg"; $cmd = "exiftool -overwrite_original -Orientation={$rotate_id} -n {$filename} "; system( $cmd );
私的メモ
RaspberryPi - Raspberry PiとArduinoでシリアル通信 - Qiita http://qiita.com/k_kinukawa/items/6eefb56c5c76863f7697
RaspberryPi - Raspberry Piで音を出すまで - Qiita http://qiita.com/plsplsme/items/57b8d79d3725497fd69b
Raspberry Piで音遊び! | Device Plus - デバプラ http://deviceplus.jp/hobby/raspberrypi_entry_012/
Raspberry Piで手作り目覚まし時計!(2)音声アラーム編」 | Device Plus - デバプラ http://deviceplus.jp/hobby/raspberrypi_entry_020/
Raspberry pi http://www.yam-web.net/raspberry-pi/music.html
SmartLaser mini をちょっとやってみた
少し、暇なので、レーザーカッターを買って遊んでみました。
今回使用したレーザーカッターは、SmartLaser miniで、木に刻印をしたり紙を切ったりできる代物です。
ただ、商品を注文しても材料が送られてきて自分で組み立てる必要があるので結構たいへんかもしれません。
#一応5~6時間で作れます
今回の作品の設定はこんな感じ
画像 | |||
---|---|---|---|
速度 | F1500 | F1500 | F1200 |
出力 | 80% | 100% | 100% |
他にも、焦げる系のものであれば、なんでも刻印できると思います。
薄い場合は、複数回刻印をすると文字ははっきりします。
イラストの塗りつぶし部分は、アミカケで表現します。
ちなみに、写真でもやってみたのですが、どうにもキレイにいかなかったのでこれは練習が必要そうです。
#はっきりした写真のほうがいいのかも?
参考リンク
CentOS6.5 に mod_h2(http2) をインストールしてみた(失敗中)
CentOS6.5 に mod_h2(http2) をインストールしてみました(失敗中)
mod_h2のインストールには autoconf >= 2.6.8 や nghttp2 などが必要なので、順次先に入れておきます。
以下、手順。
autoconf 2.6.9 のインストール
$ wget ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz $ tar zxvf autoconf-2.69.tar.gz $ cd autoconf-2.69 $ ./configure --prefix=/usr $ make $ make install $ autoconf --version
APXS ( APache eXtenSion tool ) のインストール
多くの方は入れていると思いますが、APXSってあまり聞かなかったので掲載
$ yum install httpd-devel
nghttp2 のインストール
$ git clone https://github.com/tatsuhiro-t/nghttp2.git $ cd ./nghttp2 $ autoreconf -i $ automake $ autoconf $ ./configure $ make $ make install
mod_h2 のインストール
$ wget https://github.com/icing/mod_h2/archive/master.zip $ unzip master.zip $ cd mod_h2 $ autoreconf -i $ automake $ autoconf $ ./configure $ make
コンパイルエラーが出て諦め
おそらくは apache2.4 をインストールすれば問題ないような
ぼちぼちDockerでも・・・
Webカメラでインターバル撮影
Webカメラでインターバル撮影を行ってみました。
最初は一眼レフのインターバル機能で撮影をしていたのですが、そういえば、linuxであればcronとWebカメラを使えば同様のことができるのでは? ってことでやってみました。
最終的にこんな感じの動画を作ることができます。www.youtube.com
#1日中撮影すると結構おもしろいかも
静止画撮影もできる fswebcam のインストール
$ sudo apt-get install fswebcam
作業ディレクトの作成とキャプチャー用シェルの新規作成
$ mkdir /var/www/captureImage $ sudo chmod 777 /var/www/captureImage $ sudo emacs /var/www/captureImage/captureImage.sh
記述する内容はこちら
出力するファイル名あたりはお好みで
#!/bin/bash DATE=$(date +"%Y%m%d%H%M%S") fswebcam -r 640x480 --no-title --no-banner --no-shadow /var/www/captureImage/$DATE.jpg
実行権限の付加
$ sudo chmod +x /var/www/captureImage/captureImage.sh
クローンで定期実行(1分ごとに)
$ crontab -e
*/1 * * * * /var/www/captureImage/captureImage.sh
#emacs派な自分にはviが立ち上がるので面倒ですが、そこは気合で
これで1分ごとにカメラからの静止画が /var/www/captureImage/ ディレクトリに追加されていきます。
あとは convert や ffmpeg などで動画化してあげれば変化の様子が分かるかと思います。
ffmpegのインストールと静止画から動画
通常通りインストールすると面倒らしいので motion からffmpegをインストール
$ sudo apt-get -y install motion
ffmpeg用にキャプチャーした画像ファイルのリンクを連番で作成(これめんどい)
$ c=1 ; for i in ??????????????.jpg ; do ln $i `printf %d $c`.jpg ; c=$((c+1)) ; done
静止画から動画に変換
$ sudo ffmpeg -f image2 -r 15 -i %d.jpg -r 15 -an -vcodec libx264 -pix_fmt yuv420p video.mp4