あけましておめでとうございますー

[pukiwiki]

*本日の予定
-0:28現在は東急ジルベスター
-blogの表紙画像レンダリング~
23:45 レンダリングは終わったけど加工が済んでません。。。~
2009/01/02 1:10 ヘッダ画像の入れ替え完了

-できればサイドバーのおにゃのこも入れ替え~
ここまで行き着かず
-映画見てきました。
-このblogの記事予定。。。の説明~
*[[日経スペシャル「ガイアの夜明け」 1月3日放送 ガイアの危機~資源争奪の世紀を生き抜く:http://www.tv-tokyo.co.jp/gaia/backnumber/preview080103.html]]
塩田さんが出る模様~

*ヘッダの画像について
パノラマ画像にチャレンジしてみました
[/pukiwiki]


[pukiwiki]
データは某無料素材。DAZ Studioでレンダリングしてます。
ヘッダに使うのに思い切り横長にしたかったので、火星探査機やスリットカメラで撮ったようなパノラマ写真をCGで真似してみました。
*スリスリスリット
カメラを横方向に振るアニメーションを作成。
次のようなプログラムで、一枚の画像に結合、保存しました。
[/pukiwiki]

[pukiwiki]
各フレームの画像の中央に縦線(スキャンライン)を一本引いて、その部分の画像データを取り出し。それを、短冊を並べるようにして、横長の画像を作っていきます。

手持ちの実写動画ではうまくいきませんでした。各コマ間のオプティカルフローを計算して、どれだけパンしたかを計算してやれば出来るかな?宿題、ということで。。。

[/pukiwiki]

#!/usr/bin/python
#-*- coding: UTF-8 -*-

import opencv.cv as cv
import opencv.highgui as highgui
#今日は intel swig版で。

def fcap(input_name="test.avi",output_name="test.jpg"):
    capture = highgui.cvCreateFileCapture( input_name )
    w=800 #入力aviのフレーム数の調べ方が判らないので決め打ちで
    oimg=cv.cvCreateImage( cv.cvSize(w,480), 8, 3 );
    if( capture ):
        frame=highgui.cvQueryFrame(capture)
        fsize=cv.cvGetSize(frame)
        w,h=fsize.width,fsize.height
        print w,h
        x=0
        mx=int(w2/2);
        while frame :
            cv.cvFlip(frame)
            oimg[ 0:h , x  ]=frame[0:h,mx ]    
            x+=1
            frame=highgui.cvQueryFrame(capture)
    highgui.cvNamedWindow("test",1)
    highgui.cvShowImage("test",oimg)     
    highgui.cvSaveImage(output_name,oimg)
    cv.cvReleaseCapture(capture)
    return oimg
    
if __name__ == '__main__':
    img=fcap("test.avi","test.jpg")
    print raw_input("input any key ")

コメントを残す

メールアドレスが公開されることはありません。