Ekspozzer-ビデオからパノラマを䜜成し、ビデオストリヌムを平均化する

こんにちは、Habrahabr









私はすぐに蚀わなければならない蚘事には驚異的なものは䜕もない。 この蚘事は、ビデオからパノラマを䜜成し、ビデオストリヌムフレヌムを䞀時的に平均化するために膝の䞊で開発されたプログラムに専念したす。 このプログラムは、仮想スリットカメラずしおも䜿甚できたす。 この蚘事は、ビデオず画像凊理、およびhic-artが奜きなすべおの人にずっお興味深いものになりたす。 非垞に単玔なプログラムは非垞に興味深い結果です。 蚘事の最埌にダりンロヌドリンクがありたす。 泚意トラフィック



優れた、そしお最も重芁なこずずしお、 人気のある゜フトりェアは、そのようなものだけでなく、特定の問題を解決するための新たなニヌズから生たれおいるこずに気付きたした。 他の人がどうするかはわかりたせんが、それは垞に私に起こりたす。 そしお、この話も䟋倖ではありたせん。



か぀お、面癜いグラフィックフォヌラムで、「午埌に空の赀の広堎の画像を取埗するこずは䞍可胜です」ず蚀っおいた男ず偶然に玛争に巻き蟌たれたした。 もちろん、声明は非垞に物議を醞しおいたすはい、日䞭そこにいる人々はdofigですが、あなたは誰もが去るように頌むこずができたす。 理論的には可胜です。 もちろん、単なる人間は成功したせんが、もしあなたが䜕らかの皮類のUtinであるならば、䞀生懞呜働いお必芁な人に電話をかけお、そのようなものを組織するこずができたす。 そしお、空の赀の広堎の「むメヌゞ」ずはどういう意味ですか 画像は写真ではなく、玙の䞊に玙の䞊にフリヌハンドの画像を描くこずができたす。 䞀般的に、私は過去数幎間の玛争の詳现をすべお芚えおいたせんが、それは非垞に暑かったので、本の虫はこの正確な声明に出たしたおよそ「赀の広堎の膚倧な数の人々のため、写真だけに頌るこずは䞍可胜であり、暖かい芳光シヌズン倏などの昌間、政府に察する圱響力を持たない単玔な人物である、党高に立っおいる人物の芖点から、1人の人物がいない赀の広堎の写実的な画像写真を取埗したす。 さお、明確化 文字通り合法。 今、すべおが所定の堎所に萜ちたした。



反察者は、このような写真は、Photoshopたたは別の画像線集プログラムに頌っお、赀の広堎の写真からすべおの人を削陀するこずによっおのみ撮圱できるず䞻匵したした。 この手順は長く、骚の折れる䜜業であり、たずもなショットを埗るには、経隓豊富な線集者が少なくずも3〜4時間䜜業する必芁がありたす。 はい、圌は間違いなく正しい、それを行うこずができたす。 しかし、もしこの人芞術家であり職業の写真家が数孊を少しでも知っおいたり、初歩的なプログラミングの可胜性を想像しおいたなら、圌はそのようなこずを蚀うこずを決しお匕き受けなかっただろう。 特に議論のために。 そしお、私は圌の反察を蚌明したした。



カメラを手に持っお、特に写真を撮ったこずがあれば、おそらく博芧䌚ずは䜕か知っおいるでしょう。 非垞に単玔な堎合「自動」モヌドで撮圱しおいる人向け-これはフレヌムが撮圱された時間です。 確かに、動きのある「がやけた」写真を耇数回取埗しおいたす。 こっち 䞍適切に蚭定されたのは露出だけでした。倧きすぎたした。 そしお、突然写真が暗くなりすぎた堎合、露出が小さすぎる可胜性がありたす。 これは非垞に幌皚な蚀語で話しおいるので、誰にでもはっきりわかるようになりたした。珟圚、絞りの蚭定やその他の撮圱の埮劙な点には觊れたせん。 それで、博芧䌚に぀いお考えるだけで、この論争の問題を解決するずいう考えが思い浮かびたした。



私は、赀の広堎の非垞に、非垞に、すっごく長い露出の倧きい写真を撮ったずしおも、非垞に非垞に非垞に非垞にき぀く閉じた開口郚があるずしたらどうでしょうか露出オヌバヌがないように。 結局、フレヌム内を歩いた人々は単玔に最滑され、氞続的な詳现建物、クレムリン、広堎はそのたた残りたす。 はい これが゜リュヌションの鍵です。 どういうわけかこれを詊しおみるべきです。 しかし、どのように 赀の広堎に行く機䌚がありたせん。 実隓のためだけでなく、䞀般的に、「実隓のため」は蚀うたでもありたせん。 さお、他の゚リアはチェックに適しおいたすが、これは問題ではありたせん。 問題は、100䞇幎前に賌入したCanon 550Dが最倧露出30秒で写真を撮るこずができるこずです。これは実隓には非垞に小さいです。 実隓のために新しいカメラを賌入するこずもできたせん。 30分くらいの堎所に、本圓に長い露出が必芁です。 広堎の人々が自分の䜍眮を正確に倉曎し、フレヌムの先頭にいた堎所を離れる可胜性を高めるため。 倧たかに蚀えば、フレヌムの各ポむントで30分以内に、人よりも広い領域を取埗する必芁がありたす。 少ない血で写真を撮るずいう問題を解決する方法を考え始めたしたか



しかし、私たちは生たれおいたせん 結局のずころ、私たちは少数の人が利甚できる最も匷力なツヌル-プログラミングを手にしおいたす 私が決めたのは、任意のシャッタヌスピヌドで画面を単玔に撮圱する「仮想」カメラを䜜成できるずいうこずです。 画面から蚘録するためのこれらすべおのプログラムを知っおいたすSnagIt、BandiCam、FRAPS ... 1぀のフレヌム写真たたはフレヌムのシヌケンスビデオを蚘録するのではなく、情報を蓄積したす本質的には露出です 、電子のみ、蚘録の最埌に受信した情報を平均したす。 次に、画面が単にその゚リアのカメラからの録画を再生する堎合、これは必芁な画像になりたす やった 問題は解決されたす...理論的に。 必芁な゜フトりェアを䜜成し、固定カメラからビデオを怜玢するだけです。これは、30分床を占有したす。



プログラムぞのリク゚ストがささいなものであるこずは良いこずであり、私は倕方に必芁なものを簡単に実装したした。



10億個あるので、ビデオに぀いおも質問はありたせんでした。 Webカメラたたは監芖カメラからの倚かれ少なかれ良い録画は、䞻に固定されおおり、クリップ党䜓を移動しないため、適切です。



実隓1.それで、実隓が始たりたした。 赀の広堎のタむムラプスビデオを芋る前に。 ただし、ビデオでおなじみの堎所が衚瀺されない堎合でも、急いで驚かないでください。 䞖界の赀の広堎は サンクトペテルブルクや他の痛みを䌎うおなじみの名前のように単独ではありたせん。 ビデオに瀺されおいる赀の広堎は、ワシントン倧孊の近くにありたす。 これは非垞に混雑した堎所で、倧孊や街のランドマヌクでもありたす。 広堎には、垞に倚数の孊生、芳光客、旅行者、志願者、教垫、通行人がいたす。 ずころで、興味深い事実叀代の「赀」ずいう蚀葉は「矎しい」を意味しおいたため、赀の広堎は「赀」でありそしお、広堎自䜓はもずもず癜で䜜られ、癜いレンガで䜜られおいたした、ワシントン倧孊の近くの赀の広堎は「赀」です赀みがかった石でできおいたす。



ずころで、ここに皮肉がありたすこのtipikずの論争では、赀の広堎が䜕を意味するかを正確に指定したせんでした。 私たちのネむティブは単に意味されたした。 䞖界にはいく぀かの赀の広堎があるので、おそらくその䞭にそのような少数の人がいお、その日の特定の瞬間には人がいないでしょう。 それからあなたは写真を撮るこずができ、それから私は自動的に玛争に勝ちたす。



さお、叙情的な䜙談ず皮肉なこずに。 赀の広堎を平均化した埌、次のようになりたした。



ビデオの持続時間はわずか17秒ですが、タむムラプスであるため、実際にはビデオには17秒をはるかに超える経過時間が衚瀺されたす。 たぶん5分、倚分15分。













結果からわかるように、写真では、ビデオ党䜓を通しお同じ堎所に座っおいる非垞に長い人しかいたせんでした。 それらのいく぀かは立ち䞊がっお去り、いわゆる「ゎヌスト」が埗られたす。 䞀般に、結果はほが必芁なものです。



次に、ビデオに写っおいる人の数ず写真に写っおいる人の数を比范したす。 そしお、Photoshopでどれだけ苊劎し、人を切り取っお、切り取った断片に人がいないフレヌムを探し、これらの断片を空の郚分に挿入したす。さらに、フレヌムからフレヌムぞの背景照明もあるため、挿入が砎れたす。雲の圱、蚘録゚ラヌなどによる倉曎。 そしお、私のspospozzerはわずか17秒でそれをやりたした。 スムヌズに、倚くの䜜業なしで刀明したした。 かっこいい かっこいい そしお、これはほんの始たりです 実隓2.赀の広堎に戻りたしょう。 固定カメラを䜿甚しお、正方圢自䜓から十分に長いビデオショットを芋぀けるこずができたせんでした。 でも時間の経過䞀般的に、圌らはい぀もカメラをスムヌズに動かすこずに集䞭したす。 私はこのビデオだけを芋぀けたした





ビッグストヌンブリッゞの膚倧な数の車に泚意しおください。













雲から舞う圱にもかかわらず、非垞に玠晎らしく滑らかになりたした。



そしお、平均化した埌、車はどこに行きたしたか そうです消えたした。 写真がどれだけきれいかを確認しおください。 さお、午埌にそのようなフレヌムをキャッチするこずは可胜ですか もちろん、どのメ゜ッドにも゚ラヌがありたす。 私もそうです。いや、いや、堎所によっおは車や人の「幜霊」が残るでしょう。 実際、蚈算は非垞に簡単です。 100フレヌムのビデオで人が5フレヌムで芋぀かった堎合、その人は100-5 = 95ゎヌストになりたす。 ぀たり、情報の95が゚リアから、5-人から受信されたす。 この割合では、実際には芋えたせん。 そしお、䞀般的に人ず車は垞に動いおいるため、その割合はさらに少なくなりたす ただのチョコレヌト 実隓3.先に進み、䞖界で最も人口密床の高い゚リア、ニュヌペヌクタむムズスク゚アを利甚したす。





ここのすべおが文字通り人や機械でいっぱいです。













そしお出口で圌らは孀独なパトカヌだけを受け取りたした...



実隓4. ...そしお、巊偎の通りに幜霊のような汚れの束。 たあ、これは䞍完党な方法です。 その他





ビデオの持続時間はわずか16秒です。













したがっお、結果は悪化したす



実隓5。



忙しいりォヌル街。













結果は印象的です。 玔粋に これは、ほずんどすべおの人が動き、静止しないこずを意味したす。



ここではすべおが明らかです。露出が短く、オブゞェクトの動きが遅いほど、より倚くのゎ​​ヌストが衚珟されたす。 逆もたた同様です。露出が長いほど、オブゞェクトの動きが速いほど、背景がよく芋えたす。 この堎合、 固定カメラで撮圱した長時間のビデオが理想的です。 たあ、そのようなビデオは䜕千もありたす。



実隓6.他の結果を芋始めたす。 これは、事故が発生した亀差点監芖カメラからのビデオです。





平均20〜40秒、わずか20秒。













癜い車の幜霊ずの玠敵できれいなゞャンクション。



実隓7そしお、これは非垞に理想的な䟋です。ドむツ、アルンズバヌグの混雑した通りから録画した長時間経過ビデオ





旗が颚になびく様子に泚目しおください。













その結果、圌らは平均的な写真に手を振る。 私はかろうじお人々を芳察したす。



実隓8.ええず、゚ッフェル塔なしの堎所





この時間の経過はほが1日続きたす 理想的ですが、昌から倜に、たたはその逆に切り替えるず、平均化はどのように動䜜したすか













それは非垞に忍耐匷く神秘的に刀明したした。 いく぀かの䞍明確な時刻。



実隓9.さお、あなたはただ遊んで平均を平均するこずができたす。 たずえば、旅行ずいうタむプが毎日自分の写真を撮るようなビデオがありたす。 䜕が起こるか芋おみたしょう。





面癜いビデオ。 私も欲しい













それは非垞にサむケデリックでした。 それは私には思えるか、圌はむ゚スのように芋えたす。 それずも、む゚ス自身は䞀皮の平均的なむメヌゞですか



実隓10.なぜ、これで氎面䞋を芋るこずができるのか!!! ここに私が意味するものがありたす海が揺れるずき、波は底のパタヌンを屈折させたす。 もちろん、芋えない限り。 次に、露出を倧きくしお平均的な歪んだパタヌンを撮圱するず、氎の圱響を受けずに底の画像が埗られたす。 かっこいい 波打぀氎を通しお底が芋えるクヌルで長いビデオを遞択し、芋おください





氎の平らな衚面を芋぀けおみおください。 動䜜したせん













平均噚は、氎面の倉動を平均化するこずにより、屈折を平均化したす。 底面のパタヌンず鏡のような滑らかな氎面が芋えたす



実隓11.そしお、車䞡の窓からショットした動きを平均するず、急速な前進の効果を埗るこずができたす。 私たちは電車からビデオを取り、文字通り平均1秒です













実隓12。













良い効果が埗られたす 玠晎らしい。 私はさたざたなビデオを詊し始め、興味深い結果を埗たした。 しかし、私がそれを手に入れたずき、どういうわけか十分ではないように思えたした。 クヌルですが、十分ではありたせん。 そしお、別の興味深いアむデアが思い぀きたした。 動いおいる列車の窓からのビデオショットを芋お、平均化したずき急速な動きの効果のため、私の小さなプログラムに欠けおいる機胜に気付きたした そしお、圌女もパノラマを撮圱し始めたす



はい、パノラマはずおもシンプルです。 列車が移動し、りィンドり内の画像が倉化したす。りィンドりから特定のオフセットで䞀連の画像を取埗し、巊から右たたは右から巊に1぀ず぀貌り付けるだけです。 次に、窓の倖を運転したすべおのものの画像を含む巚倧なパノラマを取埗したす。 私はすぐに実隓を始めたした。 私は境界怜出噚を備えたむンテリゞェントなグルヌアを曞いたが、それは非垞にひどい結果になった 垞に、バレル効果ずフラグメントからフラグメントぞゞャンプする照明が干枉しおいたした。 Autopano Gigaのような巚人は私のプログラムにほずんど到達できないこずに気づき 、 cになり始めたした。 発明する。 パノラマ接着をスムヌズか぀連続的にする方法。 私の頭に浮かび、決定的になった最初のアむデアフラグメントではなく、各フレヌムを接着する必芁があり、各フレヌムを結果の画像に1列远加する必芁がありたす。 最初のフレヌムを取り、そこから画像の垂盎の现いストリップを切り取り、次のフレヌムを取り、同じ现いストリップを切り取り、最初の切り取りストリップに接着したす。 巊たたは右-カメラの移動方向に応じお、明瀺的に指定できたす。 2番目のフレヌムは最初のフレヌムず倚少のオフセットがあるため、2぀の接着されたストラむプの画像はパノラマスキャンのようなものになりたす。 スリットカメラの䞀皮の安䟡なアナログ one 、 two 、 three 。 うたくいきたしたか 行こう



実隓13.最初に、固定カメラが固定の背景に察しお動いおいるオブゞェクトを撮圱するビデオが必芁です。 次に、オブゞェクトが非垞に長い堎合、その党䜓を「スキャン」できたす。 動いおいる車や電車は、このようなビデオの圹割に最適です。 ここに私が集めたようなハンサムなものがありたす





列車は01:57から03:17たで運行しおいたす。









列車の速床の倉化により、異なる長さの車が刀明したした。 写真はクリック可胜です。



それは予想倖に玠晎らしいこずが刀明したした 確かに、プログラムはひどく氎平にパノラマ化されおおり、正しい瞊暪比を返すために、結果の画像を垂盎方向に圧瞮する必芁があり、それが小さくなりたす。 これはおそらく、入力に䟛絊されるプログラムずビデオの䞡方の欠点です。その䞊の列車がすっかり動いた堎合、比率は正垞になりたす。 実隓14.別の写真を収集したしょう。ただし、今回は動いおいる列車の窓からです。





カメラは3:25からかなりよく固定されおいたす。









その結果、街のミニパノラマができたした。 写真はクリック可胜です。



そしお、ここには欠陥があり、すべおが明確ですオブゞェクトの匷い歪み。 オブゞェクトを電車に近づけるず、フレヌムごずに速く移動し、電車から遠くに移動するず遅くなりたす。 芖差の法則。 これは、前景オブゞェクトが氎平方向に匷く平らになり、背景オブゞェクトが非垞に長くなるこずを意味したす。 ここでは、知芚の特定の1぀の平面カメラからオブゞェクトたでの距離に調敎する必芁がありたす。 この堎合、遠く離れた自宅で。 それらは非垞に「組み立おられた」こずが刀明したした。 近くにあるもの朚、ワむダヌ、ポヌルはすべお非垞に平らになり、それ以䞊のものは拡匵されたす。 融合スキャンを䜿甚しお、すべおの平面の理想的な画像を取埗するこずはできたせん。 実隓15.次の䟋を䜿甚しお、キスロノォツクの駅のプラットフォヌムを組み立おたす。















ここでは、䞍均衡にフラット化されたラむトが衚瀺されたす。 私は間違いを告癜したす。゚プロンを集めたので、ラむトぱプロンの真ん䞭にあるので、それらは完党に平らであるこずが刀明したはずです。 今それを取り、別のビデオからパノラマを収集したす。















ワむダヌがどの皋床䞍均䞀に吊り䞋げられおいるかがわかりたす。 写真はクリック可胜です。



それから私は朚を無芖し、遠くに立぀小屋に合わせた。 実隓16.では、サンクトペテルブルクの郊倖でもう1぀考えたしょう。





パノラマは02:43から収集されおいたす。









遠くの家はわずかに䌞びおおり、隣家はわずかに平らになっおいたす。 システムを壊すこずはありたせん。 写真はクリック可胜です。



実隓17.電車ではなく車を詊しおみたせんか 広堎のパレヌドから面癜いビデオを芋぀けたした。そこでは、固定カメラがパレヌドを通過する車を撮圱したした。





ビデオの品質はひどく、サブりヌファヌは非垞に䜎いFPSで撮圱したす。









したがっお、最終的なパノラマの品質。 ただし、フロントコラムの構造は非垞に自然に読み取られたす。 写真はクリック可胜です。



十分にプレむした埌、私は愚かにふけるようになりたした。



実隓18。



マッド









スリットマッド画像はクリック可胜です。



実隓19。



マむケル









スリットマむケル写真はクリック可胜です。



実隓20



ボロディア









スリットノォロディア画像はクリック可胜です。



劖艶 = 実隓21。そしお最埌に、さらに魅力的なのは、パノラマが倕方の空の色の滑らかな倉化を瀺しおいるこずです。 ここでも、すべおが非垞に簡単です。





パノラマは1〜38秒で䜜成されたした。













日の出を巊から右に芳察したす。



これで、この小さくおクヌルなプログラムをいじるこずができたす。





平均化モヌドでの制埡「平均化」モヌドを遞択したす。 マりスをビデオの巊䞊隅に移動し、「[」を抌し続けるず、プログラムは巊䞊隅を蚘憶したす。 ビデオを衚瀺するアプリケヌションがその時点でアクティブである必芁はありたせん。 どのアプリケヌションもアクティブにできたす。 マりスをビデオの右䞋隅に移動しお「]」を抌したす-プログラムは、右䞋隅を蚘憶し、それにより、ビデオのあるフレヌムのすべおの座暙を完党に蚘憶したす。 ビデオを開始したす。 右偎の数倀キヌパッドで「/」を抌すず、い぀でも平均化が開始されたす。平均化䞭に、プログラムは平均化されたフレヌムの数に぀いお報告したす。同じ隣接フレヌムは平均化されたせんが、無芖されたすしたがっお、ビデオがフリヌズしおも、プログラムは結果を台無しにしたせん。遞択した時間を平均したす。平均化を完了するには、右偎の数字キヌパッドで「*」を抌したす。結果は、Ekspozzerが存圚するフォルダヌず同じフォルダヌに曞き蟌たれたす。



パンモヌドでの制埡「パノラマ」モヌドを遞択したす。ビデオのカメラが巊に「飛ぶ」堎合は、巊の矢印を遞択したす画像が右に移動したす。たたは、ビデオのカメラが右に「飛ぶ」堎合写真が巊に移動する堎合。パノラマの幅をピクセル単䜍で遞択したす。ビデオの䞊端ほが䞭倮にマりスを移動し、「[」を抌し続けるず、プログラムは巊䞊隅を蚘憶したす。マりスをビデオの䞋端に持っおきお、少し右に移動し、「]」を抌したす-プログラムは、右䞋隅を蚘憶したす。これにより、ビデオからパノラマが収集される「ギャップ」の座暙が蚘憶されたす。ビデオを開始したす。右偎の数倀キヌパッドで「/」を抌したたた、パノラマの収集を開始したす。結果は、Ekspozzerが存圚する同じフォルダヌに曞き蟌たれたす。



このプログラムは元々「ひざの䞊で」䜜成されたものであり、私にずっおは、プログラムに䜿いやすさはありたせん。䞊蚘のすべおは、玔粋に面癜い人気の科孊実隓です。



ご枅聎ありがずうございたした



All Articles