標籤:
MIL全稱為Matrox Image Library,是由加拿大Matrox公司開發的獨立於硬體,模組化的映像庫。
MIL被設計用於快速應用程式開發和方便使用。它能夠與主機CPU單獨運行,也能夠更有效充分利用專門的加速卡進行硬體加速。為了實現應用程式平台無關性,MIL擁有一個完全透明的管理系統,能夠將物理對象(比Matrox如板卡)抽象為虛擬對象進行管理。MIL使用系統的概念進行板卡區分,一個應用程式可以控制多張板卡。無論是使用具有單獨控制配置的應用還是在多個應用之間進行監視配置,MIL都允許多台電腦之間進行網路進行協同工作。
MIL是一個用C語言編寫的庫,這使它能夠更好的被C或C++程式所應用。然而,通過在代碼中添加MIL.NET封裝,MIL也可以支援Managed 程式碼,如Visual C#和Visual Basic應用。
MIL作為一個完整版,擁有對映像進行採集、處理、分析、顯示和存取操作,其功能覆蓋映像領域的所有方面,使用起來也相當的方便,而作為MIL的子集,MIL-Lite只包含了MIL的核心功能,如採集、顯示、歸檔等操作,MIL/MIL-Lite支援Matrox公司的所有採集卡,如果使用的不是Matrox公司的採集卡,則不能使用MIL/MIL-Lite的採集功能,但應用程式可以使用MIL/MIL-Lite的其它功能。
Windows 下MIL10安裝與環境配置
1,硬體需求
磁碟:使用開發環境,磁碟可用空間不低於 2560M(32-bit OS)或 不低於3072M(64-bit OS)
如果僅僅安裝運行環境,要求磁碟可用空間不低於1024M
CPU:要求支援SSE2指令集
2,軟體需求
編譯器:Microsoft Visual C++ 2008/2010(SP1)/2012(unmanaged) (C++)
Microsoft Visual C# 2008/2010(SP1)/2012(unmanaged) (C#.NET)
Microsoft Visual Basic.Net 2008/2010(SP1) /2012(unmanaged) (VB.NET)
瀏覽器:Microsoft Internet Explorer 7 或以上(MIL協助檔案使用)
作業系統:Microsoft Windows XP/7/8
【注意】在Windows下,電腦在【睡眠】或【休眠】模式下採集卡將無法工作,請禁用。
3,安裝流程
首先解壓MIL安裝壓縮包,會看到如下三個檔案
分別是32位和64位安裝包,這裡可以選擇【MilSetup】,然後雙擊,進入下一步
MIL會根據當前的作業系統選擇相應的安裝包,點擊 [Launch Installation...],進入下一步操作
選擇需要的組件,如果需要進行MIL二次開發,選擇【MIL Development】其中,[MIL for .NET]指使用.Net進行MIL二次開發,【Distributed MIL】指使用MIL進行分布式應用,而【Intellicam】則是MIL內建的用於調節採集卡的工具,這裡強烈建議安裝。選擇完成以後,點擊【 Next> 】
根據需要選擇需要使用的採集卡驅動,當然也可以都選擇,不過安裝時間會很慢,安裝完成以後可以通過MILConfig進行設定,筆者機器上安裝的是Matrox Solios系列採集卡,所以選擇【Matrox Solios】,點擊【 Next> 】
選擇預設的採集卡驅動,注意,HOST預設情況下回被自動安裝,因而在Default System選項中會出現兩個選項,一個是前面選擇的Matrox Solios,一個是Host,Digitizer Configuration Format[DCF],指的是系統預設情況下使用的DCF配置,當然這些在安裝完成以後通過MILConfig重新設定的,點擊【 Next> 】
安裝過程中會彈出以下提示,選中【始終信任來自"Matrox Electronic Systems Ltd"的軟體(A)】,點擊【安裝】
在安裝即將結束時,會彈出對話窗詢問是否要求自動更新,可以根據需要自行決定,但作為工業上的應用,我們並不追求最新,除非有些特別需求,這裡我們選擇【否(N)】
安裝完成後,需要重啟電腦
4,MIL的啟動
安裝完成以後,MIL會將啟動的捷徑自動添加到案頭,啟動MIL的控制中心,Control Center
選擇,General Tools一欄中的【Matrox Intellicam】,進入到MIL Intellicam 主角面。
注意,使用Matrox Intellicam是需要運行許可的,不過不必擔心,採集卡本身就相當於一個運行許可,因而只要電腦上插入了Matrox採集卡就相當於得到了運行許可。在主介面當中,我們點擊那個綠色的採集卡表徵圖就可以看到當前電腦上已經插入的採集卡數量及類型,如所示,可以看出當前筆者的電腦上安裝了兩塊Matrox Solios採集卡,其實兩塊採集卡的類型是一樣的,但為何顯示的是【Solios eV-CL Dual 0】和【Solios eV-CL Medium 1】呢?其實是兩張採集卡處在不同的模式下,其中一張處在Dual Base模式下,而另外一張處在Medium模式下,其中一張表徵圖前面有個字母A書名其處在活動狀態,也就是我們正在使用的,可以通過旁邊的按鈕【Make Active】進行切換。
5,MIL的卸載
前面講到了安裝,那就順便說一下如何卸載吧,在控制台中,我們找到MIL,也就是Matrox Image,選中它,然後選擇卸載,之後會出現詢問對話方塊,我們選擇【是】
然後系統就開始卸載啦,注意卸載完成以後要重啟機器
6,測試安裝
驗證安裝的方式有很多種,Matrox官方提供一段代碼用於驗證MIL是否正確的代碼(注意配置好include及library路徑):
1 /******************************************************************************/ 2 /* 3 * File name: MAppStart.cpp 4 * Location: ...\Matrox Imaging\MILxxx\Examples\General\MappStart\C++ 5 * 6 * Synopsis: This program allocates a MIL application and system, then displays 7 * a welcoming message using graphics functions. It also shows how 8 * to check for errors. 9 */10 #include <mil.h>11 12 int MosMain(void)13 {14 MIL_ID MilApplication, /* Application identifier. */15 MilSystem, /* System identifier. */16 MilDisplay, /* Display identifier. */17 MilImage; /* Image buffer identifier. */18 19 /* Allocate a default MIL application, system, display and image. */20 MappAllocDefault(M_DEFAULT, &MilApplication, &MilSystem, 21 &MilDisplay, M_NULL, &MilImage);22 23 /* If no allocation errors. */24 if (!MappGetError(M_GLOBAL, M_NULL))25 {26 /* Perform graphic operations in the display image. */ 27 MgraColor(M_DEFAULT, 0xF0);28 MgraFont(M_DEFAULT, M_FONT_DEFAULT_LARGE);29 MgraText(M_DEFAULT, MilImage, 160L, 230L, MIL_TEXT(" Welcome to MIL !!! "));30 MgraColor(M_DEFAULT, 0xC0);31 MgraRect(M_DEFAULT, MilImage, 100L, 150L, 530L, 340L);32 MgraRect(M_DEFAULT, MilImage, 120L, 170L, 510L, 320L);33 MgraRect(M_DEFAULT, MilImage, 140L, 190L, 490L, 300L);34 35 /* Print a message. */36 MosPrintf(MIL_TEXT("\nSYSTEM ALLOCATION:\n"));37 MosPrintf(MIL_TEXT("------------------\n\n"));38 MosPrintf(MIL_TEXT("System allocation successful.\n\n"));39 MosPrintf(MIL_TEXT(" \"Welcome to MIL !!!\"\n\n"));40 }41 else42 MosPrintf(MIL_TEXT("System allocation error !\n\n"));43 44 /* Wait for a key press. */45 MosPrintf(MIL_TEXT("Press <Enter> to end.\n"));46 MosGetch();47 48 /* Free defaults. */49 MappFreeDefault(MilApplication, MilSystem, MilDisplay, M_NULL, MilImage);50 51 return 0;52 }
MIL的安裝與環境配置