• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于面向?qū)ο笳Z言的多機位室內(nèi)拍攝系統(tǒng)設(shè)計

      2017-07-19 13:36:58許志成
      關(guān)鍵詞:控制卡窗體機位

      許志成

      (黎明職業(yè)大學(xué) 信息與電子工程學(xué)院,福建 泉州 362000)

      基于面向?qū)ο笳Z言的多機位室內(nèi)拍攝系統(tǒng)設(shè)計

      許志成

      (黎明職業(yè)大學(xué) 信息與電子工程學(xué)院,福建 泉州 362000)

      針對影視作品的某些室內(nèi)拍攝需要,提出一種基于面向?qū)ο笳Z言的多機位室內(nèi)拍攝系統(tǒng)。通過將步進(jìn)電機作為攝像頭的全方位執(zhí)行機構(gòu),運用智能運動控制卡對步進(jìn)電機的運動進(jìn)行控制;與計算機端鏈接,用戶通過操作計算機端上的相應(yīng)軟件對智能運動控制卡發(fā)送指令,從而實現(xiàn)攝像系統(tǒng)機位的遠(yuǎn)程操作。該系統(tǒng)使用面向?qū)ο笳Z言實現(xiàn)智能運動控制卡與計算機端的相互關(guān)聯(lián),提高編程效率,實現(xiàn)良好的人機交互操作,給予系統(tǒng)良好的可擴展性。

      拍攝系統(tǒng);步進(jìn)電機;智能運動控制;多機位控制;面向?qū)ο?/p>

      傳統(tǒng)的取景拍攝方式難以滿足當(dāng)前影視作品對場景拍攝方式的新要求,因而出現(xiàn)了多機位拍攝系統(tǒng),即在不同的方位分別布置攝像頭,各攝像頭對同一場景或接續(xù)或同步拍攝,通過后期處理將所拍攝內(nèi)容進(jìn)行合成處理,從而實現(xiàn)場景的特殊拍攝要求。由于多機位攝像系統(tǒng)增加了攝像頭的數(shù)目,相對于傳統(tǒng)的單攝像頭拍攝方式,無論是在攝像頭的角度調(diào)整或是在攝像頭的參數(shù)設(shè)置上,都帶來諸多不便,且手動調(diào)整方式效率低,增加了拍攝成本。為實現(xiàn)高效快捷的多機位拍攝,降低拍攝成本,本文提出一種針對室內(nèi)拍攝需求的基于面向?qū)ο笳Z言的多機位室內(nèi)拍攝系統(tǒng)[1]。系統(tǒng)采用基于面向?qū)ο笳Z言設(shè)計的用戶端控制程序,將軟件所應(yīng)實現(xiàn)的功能用不同的類進(jìn)行模塊化封裝,減少編程工作量,提高系統(tǒng)的可擴展性,為之后系統(tǒng)的維護(hù)升級提供便利。

      1 系統(tǒng)硬件構(gòu)架

      多機位室內(nèi)拍攝系統(tǒng)是一種在硬件上基于智能運動控制構(gòu)架,在軟件上基于面向?qū)ο笳Z言的系統(tǒng)。該系統(tǒng)硬件由多機位攝像頭、步進(jìn)電機、智能運動控制卡、USB3.0通信器及計算機終端等部分組成[2]。攝像頭安裝在旋轉(zhuǎn)控制架上,每個旋轉(zhuǎn)控制架配備兩個步進(jìn)電機,分別控制攝像頭的水平角度擺動和豎直方向轉(zhuǎn)動,實現(xiàn)攝像頭空間的全方位轉(zhuǎn)動;將4個這樣的拍攝模塊分別安裝在室內(nèi)所需的各個拍攝點位置便能夠滿足所有特殊角度場景的拍攝需求[3]。智能運動控制卡是該系統(tǒng)的核心,它是連接計算機終端與多機位拍攝執(zhí)行機構(gòu)的媒介,同時也是該系統(tǒng)的執(zhí)行控制中心。系統(tǒng)采用雷賽DMC5840運動控制卡,該運動控制卡支持8軸聯(lián)動同步控制,同時又具備4個高速輔助觸點,能夠很好地支持系統(tǒng)的指令程序控制[4]。

      硬件構(gòu)架的搭建方式為:4個拍攝模塊的步進(jìn)電機分別通過高速脈沖指令端線與運動控制卡的8個軸輸出端口連接,用4條快門引線分別將攝像頭與運動控制卡的4個高速輔助觸點相連接;將智能運動控制卡的信號輸入端與通信器的信號發(fā)射端相連,通信器的接收端通過USB3.0接口與計算機終端相連接,構(gòu)成多機位拍攝的硬件系統(tǒng)[5]。

      2 軟件控制應(yīng)用程序設(shè)計

      采用面向?qū)ο笳Z言進(jìn)行系統(tǒng)的軟件程序設(shè)計??梢院艽蟪潭鹊睾喕浖僮?,使控制軟件的操作更加人性化。在編程設(shè)計過程中,可采用類封裝的方式對軟件所欲實現(xiàn)的功能進(jìn)行模塊化編程設(shè)計,劃分為不同模塊,同時利用面向?qū)ο笳Z言的繼承特點進(jìn)行類與類之間的相互關(guān)聯(lián),減少程序設(shè)計的工作量,也為后續(xù)維護(hù)等工作提供便利。按照類劃分模塊的設(shè)計方式,該軟件程序設(shè)計主要由通信模塊、空間角度控制模塊以及攝像頭參數(shù)調(diào)節(jié)模塊等3部分組成,通信模塊為主體父類,空間角度控制模塊及攝像頭參數(shù)調(diào)節(jié)模塊分別繼承于通信類,實現(xiàn)程序內(nèi)部之間的整體關(guān)聯(lián)。

      2.1通信模塊的窗體FORM類程序設(shè)計

      Form程序是該系統(tǒng)軟件部分的主體,主要承擔(dān)運動控制卡與計算機終端的通信連接,獲取攝像頭采集信息以及創(chuàng)造操作控件所需類等工作,同時作為父類關(guān)聯(lián)程序內(nèi)部的各個模塊。在硬件系統(tǒng)部分搭建連接完成后,打開VisualStudio2013,創(chuàng)建一個Windows窗體應(yīng)用程序,將程序語言設(shè)置為C#,雙擊Windows窗體控件,進(jìn)入Form程序的編寫頁面。

      第一步,加載運動控制卡與攝像頭函數(shù)庫及實現(xiàn)系統(tǒng)各模塊之間的相互關(guān)聯(lián):首先,采用using方式加載DMC5840和CAMERA兩個函數(shù)庫;其次,在主窗體Form中創(chuàng)建兩個Click按鈕,將兩個Click按鈕的雙擊事件分別設(shè)置為調(diào)用Form1窗體(空間角度控制類)及Form2窗體(攝像頭參數(shù)調(diào)節(jié)類);最后,使Form1,F(xiàn)orm2分別繼承于Form主窗體類,實現(xiàn)模塊關(guān)聯(lián)。Form1,F(xiàn)orm2兩個類模塊便可通過與Form類的繼承關(guān)系直接獲取相關(guān)硬件通信信息及調(diào)用操作相關(guān)硬件函數(shù)庫,提高程序的工作效率,減少操作延遲。

      第二步,進(jìn)行通信程序的編寫設(shè)計:首先,在程序框架的命名控件內(nèi)創(chuàng)造一個Socket類型變量,將其命名為connect;其次,創(chuàng)建一個bit類型的數(shù)組變量,將數(shù)組長度設(shè)置為12,命名為movsigal,同時創(chuàng)建一個for循環(huán),將循環(huán)次數(shù)設(shè)置為12,在循環(huán)體內(nèi)調(diào)用getsigal函數(shù),分別對bit數(shù)組的每一個成員進(jìn)行信號賦值;最后,再創(chuàng)建一個for循環(huán),將bit數(shù)組的信號變量值分別賦予connect下的receive屬性中的每一個數(shù)組成員,建立運動控制卡與計算機終端之間的通信連接。

      第三步,進(jìn)行攝像頭信息采集的程序設(shè)計:首先,創(chuàng)造一個DigalMedia類型的數(shù)組變量,將數(shù)組長度設(shè)置為4,命名為gottenVideo;其次,創(chuàng)造一個for循環(huán),循環(huán)次數(shù)設(shè)置為4,在循環(huán)體內(nèi)將bit數(shù)組成員進(jìn)行格式轉(zhuǎn)化,轉(zhuǎn)化成image類型變量,將其轉(zhuǎn)換變量后的變量值賦予gottenVideo的各個成員;最后,在Form窗體中,設(shè)置4個Video控件,分別接收gottenVideo變量中的對應(yīng)成員值,程序便能夠分別接收4個攝像頭的實時圖像,并同步顯示在Windows窗體程序上。

      第四步,創(chuàng)造其他類所需的中樞類的一項:首先,創(chuàng)造一個Control類型的變量,將其命名為getMove;其次,將其設(shè)置為所有控件變量類型的子類,使其能夠?qū)崟r接收到控件處的相關(guān)操作信號;最后,調(diào)用connect對象下的send屬性,將getMove賦值于該屬性,使運動控制卡接收到來源于計算機控制端的操作指令信號。完成Form程序的相關(guān)編寫設(shè)計[6]。

      Form程序的相關(guān)設(shè)計算法如下所示:

      using System.Text;

      using System.Threading.Tasks;

      using System.Windows.Forms;

      using DMC5840.Text;

      using CAMERA.Text;

      namespace WindowsFormsApplication1

      {

      public partial class Form : Form1,F(xiàn)orm2

      {

      public Form( )

      {

      Socket connect = new Socket( );

      bit[12] movsigal ;

      For(int i=0;i>=11;i++ )

      {movsigal[i]=getsigal on i;}

      For(int i=0;i>=11;i++ )

      {connect.receive[i]=bit[i];}

      DigalMedia[4] gottenVideo;

      For(int i=0;i>=3;i++ )

      {gottenVideo[i]= (to image)movsigal[i] ;}

      Control getMove=new Control();

      getMove:All Objet;

      connect.send=getMove;

      }

      2.2空間角度控制模塊的Form類程序設(shè)計

      空間角度控制程序用來控制4個攝像頭的全方位旋轉(zhuǎn)擺動。第一步,在Form1窗體內(nèi)分別拖入4個Button類型控件,置于Video控件下方,顯示標(biāo)志分別設(shè)置為UP,DOWN,LEFT,RIGHT;第二步,雙擊UP Button控件,對該控件進(jìn)行程序代碼設(shè)計:首先,在該控件的命名空間內(nèi)創(chuàng)建一個PickReaction類型變量,將其命名為getClick;其次,調(diào)用該類型對象下的revolve屬性,將bit on 1值賦值于該屬性;最后,調(diào)用該類型對象下的send函數(shù),參數(shù)設(shè)置為getMove;實現(xiàn)將用戶的操作指令傳送到運動控制卡中。以上所述是針對UP Button控件的具體程序設(shè)計,其余的控件程序的設(shè)計與其大致相同,只需將其余3個控件中的getClick.revolve屬性分別賦值于bit on 0;bit on 1;bit on 0即可。攝像頭控件的角度控制程序具體算法設(shè)計如下:

      public partial class button1:Form

      {

      PickReaction getClick=new PickReaction();

      getClick.revolve=bit on 1;

      getClick.send(getMove);

      }

      2.3攝像頭參數(shù)調(diào)節(jié)程序設(shè)計

      攝像頭參數(shù)調(diào)節(jié)程序主要用來實現(xiàn)對攝像頭參數(shù)如對焦、ISO等的遠(yuǎn)程控制。第一步,進(jìn)行對焦控制程序的相關(guān)設(shè)計:首先,雙擊Video控件,創(chuàng)建一個Fix類型對象,命名為camera;其次,調(diào)用GetSiteposition函數(shù),將該函數(shù)的參數(shù)值設(shè)置為click,調(diào)用Ref指令將函數(shù)值映射到Image類型變量中,同時創(chuàng)建一個Image類型變量,命名為im,接收映射后的函數(shù)值;最后,將該函數(shù)值賦值camera變量的focus屬性,至此,便能夠?qū)崿F(xiàn)遠(yuǎn)程對焦控制,系統(tǒng)會對顯示圖像中鼠標(biāo)的點擊處進(jìn)行自動對焦。第二步,進(jìn)行ISO控制程序的相關(guān)設(shè)計:首先,在Form2窗體內(nèi)拖入一數(shù)字框控件,雙擊該數(shù)字框控件,在該控件的命名空間下創(chuàng)建Light類型變量,命名為setiso,并對該變量賦值box.Context;其次,創(chuàng)建一個Cmos類型對象,命名為getiso,將setiso的變量值賦予getiso的value屬性;最后,調(diào)用getiso的set函數(shù),將函數(shù)值設(shè)置為camera,實現(xiàn)對攝像頭ISO的遠(yuǎn)程控制[7]。攝像頭參數(shù)調(diào)節(jié)程序的具體算法如下所示:

      public partial class Video:Form

      {

      Fix camera=new Fix( );

      Image im=(Ref Image)GetSiteposition(click);

      camera.focus=im;

      }

      public partial class box: Form

      {

      Light setiso=box.Context;

      Cmos getiso=new Cmos( );

      getiso.value=setiso;

      getiso.set(camera);

      }

      2.4控制軟件操作說明

      本系統(tǒng)的控制軟件為面向?qū)ο箢愋偷腤indows窗體類應(yīng)用程序,程序的主窗體界面有兩個操作按鈕,分別對應(yīng)空間角度調(diào)整與攝像頭參數(shù)設(shè)置兩個操作界面。所有窗口點擊展開后,整個操作界面分為4個區(qū)域,每個區(qū)域?qū)?yīng)一個機位攝像頭的相關(guān)操作,每個區(qū)域內(nèi)部皆由影像顯示窗口、攝像頭方位控制按鈕及ISO設(shè)置框等幾部分組成。用戶點擊操作4個方位控制按鈕便可實現(xiàn)對攝像頭的全方位擺動控制,在ISO設(shè)置框內(nèi)輸入預(yù)設(shè)的ISO值實現(xiàn)對攝像頭感光度的實時控制。在對焦控制方面,用戶只需點擊影像中需要對焦的位置,系統(tǒng)便能夠快速地對該點進(jìn)行自動對焦處理[8]。

      3 結(jié) 論

      本文提出的基于面向?qū)ο笳Z言的多機位室內(nèi)拍攝系統(tǒng)能夠有效地滿足當(dāng)前攝影行業(yè)室內(nèi)場景拍攝的需求。該系統(tǒng)所采用的面向?qū)ο缶幊淘O(shè)計方法在實現(xiàn)對多機位拍攝系統(tǒng)自動控制操作的同時簡化控制方式,易掌握,便于操作,相對于其他拍攝系統(tǒng)具有較大的適用性與普及性。

      [1] 李忠曄.面向?qū)ο蟪绦蛟O(shè)計[M].北京:清華大學(xué)出版社,2011:220-231.

      [2] 薛承基.電機傳動系統(tǒng)控制[M].張永昌,譯.北京:機械工業(yè)出版社,2013:103-106.

      [3] 坂本正文.步進(jìn)電機應(yīng)用技術(shù)[M].王自強,譯.北京:科學(xué)出版社,2013:89-94.

      [4] 雷賽.DMC5480[M].北京:機械工業(yè)出版社,2015:121-156.

      [5] 雷丹.運動控制系統(tǒng)[M].北京:人民郵電出版社,2013:56-62.

      [6] MARK M,ERIC L.C#本質(zhì)論[M].周靖,譯. 北京:人民郵電出版社,2014:32-45.

      [7] JEFFEREY R.CLR via C#[M].周靖,譯.北京:清華大學(xué)出版社,2015:185-189.

      [8] BEN S,CATHERINE P.用戶界面設(shè)計[M].張國印,譯.北京:電子工業(yè)出版社,2015:145-155.

      (責(zé)任編輯:黃韡 英文審校:楊德權(quán))

      DesignofMulti-positionIndoorShootingSystemBasedonObject-orientedLanguage

      XU Zhicheng

      (College of Information and Electronic Engineering, Liming Vocational University, Quanzhou 362000, China)

      Aiming at some indoor shooting needs of film and television works, a multi-position indoor shooting system based on object-oriented language is proposed. The realization of the remote operation of the camera system is obtained by using the stepper motor as the omni-directional actuator of the camera, and the movement of the stepper motor is controlled by the intelligent motion control card and connected with the computer, which is operated by the users to send instructions to intelligent motion control. The interconnected system uses object-oriented language to achieve the correlation between intelligent motion control card and computer terminal, improves the programming efficiency, realizes good human-computer interactive operation, and shows a good system expansibility.

      shooting system; stepping motor; intelligent motion control; multi-position control; object-oriented

      2017-01-03

      許志成(1981-),男,講師,碩士,主要從事多媒體和虛擬技術(shù)方面研究。

      黎明職業(yè)大學(xué)規(guī)劃項目(LZ2015112)

      1008-8075(2017)02-0084-05

      10.13446/j.cnki.jlvu.20170032

      TP 23

      :A

      猜你喜歡
      控制卡窗體機位
      #你會分享爬樓機位嗎?#
      攝影之友(2023年5期)2023-05-17 23:19:17
      兼容多種運動控制卡的V割機數(shù)控系統(tǒng)關(guān)鍵技術(shù)*
      附著全鋼升降腳手架不同步升降性能研究
      附著式升降腳手架機位排布優(yōu)化方法及應(yīng)用
      建筑機械化(2022年2期)2022-03-06 12:48:52
      機位容量因其數(shù)量影響的仿真運行及量化關(guān)系研究
      試談Access 2007數(shù)據(jù)庫在林業(yè)檔案管理中的應(yīng)用
      檔案天地(2019年5期)2019-06-12 05:12:02
      基于運動控制卡的桁架機器人控制系統(tǒng)設(shè)計
      凌華科技四軸伺服/步進(jìn)運動控制卡PCI-C154+
      基于LayeredWindow的異形窗體局部刷新
      中文信息(2014年2期)2014-03-06 23:49:14
      巧設(shè)WPS窗體控件讓表格填寫更規(guī)范
      凤山市| 讷河市| 林甸县| 宁强县| 阿城市| 镇平县| 澎湖县| 炎陵县| 山阴县| 九寨沟县| 黄大仙区| 东乌珠穆沁旗| 涟源市| 遂宁市| 亳州市| 襄城县| 太保市| 景宁| 育儿| 东至县| 辛集市| 大城县| 禹州市| 慈利县| 武陟县| 长泰县| 青田县| 黄山市| 绥化市| 北票市| 唐海县| 江川县| 岑溪市| 阳东县| 凤阳县| 平谷区| 高台县| 连平县| 阿拉善右旗| 罗平县| 湖州市|