2013年4月25日 星期四

[Linux] 關於 Camera Orientation 問題 @ Ubuntu 12.04

得知隔壁 Team 碰到照片 Orientation 問題就稍微研究一下,舉個例來說,跨年時常看到有人用手機拍下 101 煙火影片,結果擺到電腦上要觀看時,頭則要旋轉 90 度才可以看 Orz


關於照片部分,在 JPEG 裡頭有 Exif Orientation Tag 資訊可以查看,簡易地用 iPad 2 with iOS 6.1.2 ,分別轉動 90 度拍下四張照片,並利用網路資源 jpegexiforient.c 查看:


$ mkdir ~/tmp 
$ wget http://sylvana.net/jpegcrop/jpegexiforient.c -O ~/tmp/jpegexiforient.c
$ cd ~/tmp
$ gcc jpegexiforient.c

$ find /path/photo -name "*.JPG" | -exec ~/tmp/a.out {} \;
3
8
6
1


由此 jpegexiforient.c 可知:


 * Value | 0th Row     | 0th Column
* ------+-------------+-----------
* 1 | top | left side
* 2 | top | right side
* 3 | bottom | right side
* 4 | bottom | left side
* 5 | left side | top
* 6 | right side | top
* 7 | right side | bottom
* 8 | left side | bottom

至於解法嘛,有的是靠 Photo Reader 處理,例如在 Windows 8 顯示仍一切正常,但有的沒處理時,顯示則會出錯,故最後手段就是用程式處理一下,給它轉個 90度、180度、270度吧!產生照片的過程說誰錯也不對,只能說對使用者不方便就是程式設計師的錯吧 XD


沒有留言:

張貼留言