但是除這一點優勢之外,其他加減乘除等等動作的效能,天成翻譯公司認為C++與C#乃至VB都是一樣的!沒有甚麼神奇的地方。所以我針對如何在.NET程式中臨時跳脫Windows管束,就是暫時鎖定記憶體做直接記憶體存取的方式做了一些研究,發現用VB.NET照樣有些指令可以做到。於是就寫了一個VB的程式模組,確切可以到達讓影像讀寫晉升十倍速的效果,天成翻譯公司也使用了阿誰模組有七八年了!我認為我的VB車牌辨識效能是不會輸於C++版本的!不服氣或有興趣一起研究的人接待來一路測試。
很榮幸的,天成翻譯公司的部落格漸漸地有些軟體專業人士也來捧場了!有位在美國尖端科技公司研究影像辨識的學長也來指教,他很驚訝看到天成翻譯公司竟然用VB在寫那些車牌辨識程式!因為在專業人士的認知中,影象處置與辨識是需要最高效能的程式種類,絕對需要利用C或C++說話的翻譯VB?那不是初學者用的簡略單純說話嗎?拿來寫一般商用軟體城市被質疑了,寫影象辨識程式?怎麼可能?
因為這些經驗,我對於堅持某種程式說話裡面有「神」的人不以為然,也不會因為別人評論我不應用VB做專業程式就感應愧疚,除非真的有人可以對我曉以大義,證實天成翻譯公司的觀念與做法確實錯了!對我來講,程式說話就是與電腦溝通的東西而已,應當不必自我設限的!就像面臨台南鄉下的老師長教師老太太,假如你會說台語就用吧!對峙講字正腔圓的國語,他們多半也聽得懂,但不會對照好溝通的。
但是不好意思,這些年來除了寫HTML5 APP是用JavaScript程式之外,我和我的團隊,包括製作影像辨識軟體都真的是使用VB程式做的!我固然C#與VB都很闇練,兩種說話也城市講授生,乃至都有出書冊本,但天成翻譯公司直接告知學生的是:學會C語言是一定要的!因為資訊專業範疇的人都習習用C說話,就像我們在各個專業範疇都一樣,若是看不懂英文,資訊來曆大受限制麻煩就大了!可是若是是本身開發軟體呢?我的最佳選擇與建議都是用VB。
我知道很多人覺得用VB「很不專業」,但是天成翻譯公司一直覺得我的選擇特別很是合理!VB是閱讀最輕易,寫作時也最不容易失足的一種說話,因為好讀好寫,天成翻譯公司就可以將注意力集中於思慮程式邏輯。若是
可是影象辨識就是經常要用到複雜邏輯,隨便一個影像處置動作就是二維陣列,最少需要兩層迴圈翻譯假如要做一個空間濾波那就是四層了!在中央如果必須再加一兩個前提判定式,大括號就會有五六層了!超恐怖的!相對的,VB的區塊起終點都是文字模式,哪一個竣事標籤對應於哪個肇端指令一清二楚,不感覺疲累時就會天然地敢於繼續設計更精緻的演算法,所以其實VB比C說話更適合寫複雜進階的程式,因為它做複雜的編碼比用C語言輕易良多!
事實上大師詬病VB的原因是效能,誰都不會反對它是最為親民友善的說話,但它的速度真的比力慢。但這要分兩個階段來講,在VB.NET出現之前,VB與VC有各自獨立的函式庫(Library),二者的功能廣度與履行速度確切差很多翻譯那時很多VB6玩家用呼喚C說話API的體例「盜用」C語言的功能,我也做過的!我用VB6寫的聲納軟體一碰到影象繪圖就超慢,當天成翻譯公司盜用了Winsows API以後就和Visual C一樣快了!到了.NET時期兩種語言的函式庫同一了(指微軟公司的產品.NET Framework),VB與C#的效能其實已毫無差別!
那麼仿佛加倍神秘神奇的C++說話呢?它在影象處置方面真有甚麼跨越C#的特異功能嗎?據我所知,還真的有!恰當地使用C++就能夠做直接的記憶體存取,這是C#和所有Windows功課系統下履行的程式說話根基上都邑限制的動作!我試過一張影象讀寫時,用記憶體直接存取模式與.NET供應的指令,速度差可以高達十倍以上!所以難怪C++會被視為影象處置懲罰範疇非用不成的說話。
本文出自: http://blog.udn.com/yccsonar/19022404有關各國語文翻譯公證的問題歡迎諮詢天成翻譯公司02-77260931
留言列表