[發明專利]一種圖像參數傳遞方法及系統有效
| 申請號: | 201410854996.2 | 申請日: | 2014-12-31 |
| 公開(公告)號: | CN104461585B | 公開(公告)日: | 2017-11-10 |
| 發明(設計)人: | 周俊君;鐘超軍 | 申請(專利權)人: | 廣州商景網絡科技有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44;H04N19/00 |
| 代理公司: | 廣州市華學知識產權代理有限公司44245 | 代理人: | 黃磊 |
| 地址: | 510665 廣東省廣州市*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 圖像 參數 傳遞 方法 系統 | ||
技術領域
本發明涉及一種參數傳遞方法,尤其是一種圖像參數傳遞方法及系統。屬于圖像處理領域。
背景技術
在目前眾多的編程語言中,C++憑著更接近計算機系統底層的特點,以及其安全性、簡潔性,在圖像處理上建立了較大的優勢,還擁有著成熟的圖像處理類庫,如openCV,這些優點使得C++成為圖像處理的首選;而.NET的C#語言在微軟提供的強大的類庫以及開發工具下,能快速的進行應用層的開發。因此在項目中,由C#負責開發應用界面,然后調用C++開發的圖像處理模塊進行圖像處理操作,如圖1所示。
在兩個編程語言中,C++常用CBitmap對象保存圖像信息,而C#是用Bitmap對象保存圖像位圖信息,這兩種對象不是基本數據類型,所以不能直接傳遞;而字符信息是通用的數據類型,基于這一點,C#先是用包含原圖像信息的Bitmap對象生成原圖像文件(本地JPG文件),然后把生成的文件路徑通過字符信息傳入C++,而C++在接收到完整的字符信息后,根據這個路徑去讀取相應的原圖像文件,再把原圖像轉換成自己專屬的CBitmap對象,這樣就完成了原圖像信息的傳遞,如圖2所示。
在完成原圖像信息傳遞之后,C++開發的圖像處理模塊會根據內容對原圖像進行處理,然后將CBitmap對象保存為效果圖文件(本地JPG文件),再通過字符傳遞效果圖路徑,C#獲得效果圖路徑后便可以通過路徑將文件轉換成Bitmap對象,完成整個圖像處理的流程,如圖3所示。
上述技術雖然得到較為理想的結果,但仍然存在如下問題:
1)一次交互中C#以及C++各要生成一次的本地文件,進行系統磁盤文件的讀寫,要消耗更多的系統資源,使得總的耗時更長,當頻繁的讀寫操作時,可能會由于系統資源的互斥而導致不可預知的錯誤;
2)原圖像信息保存成本地本件時,由于編譯器或者開發語言的差異,可能會引起一定的圖像信息丟失,無法保證信息的完整傳遞。
發明內容
本發明的目的是為了解決上述現有技術的缺陷,提供一種圖像參數傳遞方法,該方法提升了圖像處理的整體效率,同時保障了圖像數據的完整性與安全性。
本發明的另一目的在于提供一種圖像參數傳遞系統。
本發明的目的可以通過采取如下技術方案達到:
一種圖像參數傳遞方法,其特征在于:所述方法通過基于C#開發的應用層和基于C++開發的圖像處理模塊實現,包括以下步驟:
S1、在基于C#開發的應用層中,將原圖像對象保存至內存塊中,并獲取原圖像對象的內存地址,然后將原圖像對象的內存地址以及原圖像的長度、寬度參數一起傳給基于C++的圖像處理模塊;
S2、在基于C++開發的圖像處理模塊中,根據獲取的原圖像對象的內存地址以及原圖像的長度、寬度參數,加載內存塊中的原圖像信息,并對原圖像進行處理,然后將處理后的圖像信息保存至所述內存塊中以覆蓋原圖像信息;
S3、在基于C#開發的應用層中,解除內存鎖,重新加載內存地址中的圖像對象,得到處理后的圖像信息,從而獲取效果圖。
作為一種優選方案,步驟S1所述將原圖像對象保存至內存塊中,并獲取原圖像對象的內存地址,具體為:
利用Bitmap類保存原圖像對象,通過Bitmap類中的LockBits方法將原圖像數據以字節數組形式保存至內存塊中;
通過BitmapData類中的屬性Scan0獲取存放所述字節數組的內存地址。
作為一種優選方案,步驟S2所述根據獲取的原圖像對象的內存地址以及原圖像的長度、寬度參數,加載內存塊中的原圖像信息,具體為:
根據原圖像的長度、寬度參數,新建OpenCv的Mat對象,該Mat對象用于保存原圖像信息;
根據原圖像對象的內存地址,通過BasisOperation類中的byte2mat方法加載內存塊中的原圖像信息。
作為一種優選方案,步驟S2所述對原圖像進行處理通過BasisOperation類中的doSomething方法實現相應的圖像編輯操作。
作為一種優選方案,步驟S2所述將處理后的圖像信息保存至所述內存塊中以覆蓋原圖像信息,通過BasisOperation類中的mat2byte方法實現。
本發明的另一目的可以通過采取如下技術方案達到:
一種圖像參數傳遞系統,其特征在于:所述系統通過基于C#開發的應用層和基于C++開發的圖像處理模塊實現,其中:
所述應用層包括:
原圖像對象存儲單元,用于將原圖像對象保存至內存塊中;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣州商景網絡科技有限公司,未經廣州商景網絡科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410854996.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種參數值調整方法及電子設備
- 下一篇:一種需求變更波及效應分析方法
- 彩色圖像和單色圖像的圖像處理
- 圖像編碼/圖像解碼方法以及圖像編碼/圖像解碼裝置
- 圖像處理裝置、圖像形成裝置、圖像讀取裝置、圖像處理方法
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 圖像編碼方法、圖像解碼方法、圖像編碼裝置、圖像解碼裝置、圖像編碼程序以及圖像解碼程序
- 圖像編碼方法、圖像解碼方法、圖像編碼裝置、圖像解碼裝置、圖像編碼程序、以及圖像解碼程序
- 圖像形成設備、圖像形成系統和圖像形成方法
- 圖像編碼裝置、圖像編碼方法、圖像編碼程序、圖像解碼裝置、圖像解碼方法及圖像解碼程序
- 圖像編碼裝置、圖像編碼方法、圖像編碼程序、圖像解碼裝置、圖像解碼方法及圖像解碼程序





