Time of Update: 2018-12-04
在C++中多維矩陣是按行存放,而Matlab中是按列存放,故在opencv中從映像到Matlab中的mxArray需要進行轉置。以下討論的OpenCV中的Mat類映像與mxArray的資料轉換:1、Mat類轉為mxArray: Mat imgSrc; h = imgSrc.rows; w = imgSrc.cols; c = imgSrc.channels(); mxArray *pMat = NULL; UINT8 *input = NULL; if
Time of Update: 2018-12-04
我的理解是:如果函數的目的是修改輸入參數代表的指標的值,則加 const 更安全;如果函數的目的是為了修改輸入字元數組的內容,就不能加 const。測試代碼:#include <stdio.h>#include <string.h> void parameter_no_qualifier_const_is_to_modify_chararray_contents(char** p_array);void
Time of Update: 2018-12-04
由於工作需要,需要使用Matlab 中的mexFunction調用C++程式, 該 mex function裡又要用到opencv中的lib,所以在編譯mex的時候,需要將opencCv的lib加到matlab的環境中。系統內容: win XPmatalb: matalb 2010ac++ compiler: visual studio 2008首先先設定matlab所選定的compiler:1. matlab command: mex
Time of Update: 2018-12-04
從目標檢測的結果評測時,一直要與false positve, precision rate, recall rate這幾個名詞。總是在用的時候比較清楚這幾個詞的意思,但是時間一長,又給忘了。前幾天跟師兄討論這個問題,還是迷迷糊糊,模稜兩可。決定乾脆總結並記下來,以備不時之需。 這三個詞的中文意思分別是:誤檢率(也可以被稱作虛警率),查准率和查全率。它們是怎麼通過計算得出,可以看: 搞清楚 tp, fp, fn, 和tn的意思,基本上就算是弄明白了。false positve
Time of Update: 2018-12-04
縱觀此次CES展,在資訊終端領域智能本與平板電腦無疑是熱點之一,如果說一定要找到智能本與迷你筆記型電腦不同,主要應當還在於軟硬體設定,其應用情境並沒有發生太大變化,與使用Wintel的迷你筆記型電腦不同,智能本一般使用ARM-Linux架構,優點在於功耗更低,如聯想的智能本電池工作時間可以達到10小時,基本可以保證一天的工作需要,不過與迷你筆記型電腦相比作業系統成了軟肋,特別對於已經習慣使用Windows作業系統的中國消費者而言。 就老杳使用迷你筆記型電腦的經驗,迷你筆記型電腦只是筆記本向低端
Time of Update: 2018-12-04
有媒體為步步高及OPPO算了一筆賬認為兩家公司一年的廣告費超過10億,算的準不準老杳不清楚,不過統計的電視欄目總數只少不多,據老杳所知包括江蘇衛視知名的<非誠勿擾>其實都已經被兩家公司小視,廣告費當然少不了. 大家對標王有爭議很正常,畢竟央視的廣告標王雖然每年都是熱點,卻也在經常更換,標王更迭反映了行業熱點的變遷,也往往反映了企業的興衰,從這方面來看,媒體關注步步高現象未必壞事. 其實步步高在廣告上砸錢應當不是首次,前些年VCD火爆時步步高一樣曾經是廣告大戶,只不過當年許多的VCD
Time of Update: 2018-12-04
大家都知道,寫程式大體步驟為: 1.用編輯器編寫原始碼,如.c檔案。 2.用編譯器編譯代碼產生目標檔案,如.o。 3.用連結器串連目標代碼產生可執行檔,如.exe。
Time of Update: 2018-12-04
這幾天一直在檢查程式記憶體泄露的問題,今天終於告一段落。記憶體泄露在編製小型應用程式時看不出其危害,但如果是編製24小時啟動並執行大型平台應用程式時,如果有記憶體泄露,則隨著程式的運行,其佔用的記憶體會越來越多,最終導致系統崩潰。因此,記憶體泄露不容小覷。下面是幾天來檢查記憶體泄露的一點經驗小結。1.常規記憶體泄露的檢測常規記憶體泄露一般是由於編程者在手動申請記憶體空間之後沒有釋放造成的。如用new、malloc()函數或CString的GetBuuffer()函數申請記憶體空間後沒有使用對應的
Time of Update: 2018-12-04
唐駿說成功可以複製,結果被南大的同學複印了一摞美國某太平洋大學的文憑要求籤字。喬布斯說過人生30歲前形成習慣,30歲後享受習慣帶來的成果。 開個玩笑,唐駿的成功可以複製意思肯定不是指複印文憑,都是造句簡化惹的禍,至於喬布斯的習慣說,道理大家都明白,真正能夠享受好習慣的人應當不是太多。 想起這個話題是因為偶爾看到聯想之星大講堂即將在成都舉辦的訊息,上次大講堂在無錫舉辦曾有幸聆聽了柳總的演講,受益匪淺。 在中國好企業不少,像聯想一樣把管理經驗概括到理論水平的不多,像管理三要素:搭班子、定戰略、帶隊
Time of Update: 2018-12-04
迷你筆記型電腦概念的熱炒讓許多企業正在積極投入,也讓許多消費者抱有期待,不過從目前已經上市或媒體報道中的迷你筆記型電腦功能來看,老杳認為迷你筆記型電腦的流行尚需時日。 迷你筆記型電腦不是低端筆記本,也不是高端智能手機,應當是一款新型的個人娛樂產品,整合了電腦、MP3/MP4、智能手機、GPS、電視甚至通訊的相關功能,是一款放在包中的攜帶型產品。 目前的迷你筆記型電腦受Intel
Time of Update: 2018-12-04
Nokia的手機對聲音播放支援的好像不太好。本文根據我做j2me的經驗,總結一下Nokia三個機型的聲音播放方法。1。Nokia S40(7210,3300) 和 S60(3650,7650)/*這四款機子不支援MIDP2.0的media。我只針對我做過的機型說明,其他的機型沒有用真機實驗,不知道是否支援MIDP2.0中的media*/import com.nokia.mid.sound.*;public class MyClass extends Canvas{ ……
Time of Update: 2018-12-04
IplImage和Bitmap都是記憶體配置圖形的表示方法,前者是OpenCV開源視覺庫的,後者是GDI+的。如果在VC中使用OpenCV庫的話,很可能會用到這兩者的轉換。在網上搜尋這兩種格式轉換的話,很有可能會搜尋到有記憶體泄露的版本(比如 http://blog.csdn.net/jtujtujtu/article/details/3734722),因此在此提供了沒有記憶體泄露的版本供大家參考。【注意】使用GDI+的FromBITMAPINFO函數會導致記憶體泄露!IplImage*
Time of Update: 2018-12-04
類: 精彩雜錄這抱枕有沒有勾起各位的什麼回憶啊?即使 Linux 和 Unix 仍然在使用文字式的介面,但不知道為什麼,感覺還是 MSDOS 比較像在用電腦 XD。仔細看的話裡頭搞笑的東西還不少,像是 [PORN] 資料夾、[TORRENTS] 資料夾、TROJAN.EXE,但也有些東西讓它看起來不像 DOS(有一兩個檔案不符合 8.3 原則)。不管怎麼說,那個 Windows 附屬在 Dos 底下的美好年代已經一去不複返了(抱枕上也有個 Windows 資料夾),在每天和 BSOD
Time of Update: 2018-12-04
擠壓造型Extrusion的節點說明和應用執行個體----------------------------1。擠壓造型的節點說明:Extrusion節點 Extrusion{ spine [0 0 0,0 1 0] # MFVec3f crossSection [1 1,1 -1,-1 -1,-1 1,1 1] # MFVec2f scale [1 1] # MFVec2f orientation [0 0 1 0] # MFRotation
Time of Update: 2018-12-04
上一次在《OpenCV中Mat與Matlab中mxArray類型的轉換》代碼中轉換方法有些麻煩,後來使用了一種較為簡潔的辦法,如下: 現在有一個cv::Mat 矩陣 m_GaborFea,它是單通道 Single型,轉換為matlab資料類型, mxArray * pv; if (!m_GaborFea.empty()) { m_GaborFea = m_GaborFea.t(); pv =
Time of Update: 2018-12-04
作為一個現代的開發人員,你已經習慣了使用版本管理來管理自己的代碼和文檔。當我們在家裡的機器上想對自己的東西做版本管理的時候你需要自己配置一個版本管理伺服器,如CVS等。但是很遺憾的是,CVSNT的配置很是麻煩,而且CVS的功能實在是落伍,SVN伺服器的配置也實在麻煩,VSS?老古董一邊去!網路上申請一個免費的項目空間,如sf.net之類的:那你的檔案就都公開了。 今天我無意中發現原來建立一個個人用的SVN
Time of Update: 2018-12-04
OpenCV 中雖然有normalize這個函數,但是卻沒有Matlab中normc這樣只對Matlab中各列向量的歸一化函數。好在我們可以多寫幾段代碼來實現這種功能。代碼如下:double a[6] = {1, 2, 3, 4, 5, 6};Mat aa(2, 3, CV_64F, a);Mat temp1, temp2, temp3;pow(aa, 2, temp1);reduce(temp1, temp2, 0, CV_REDUCE_SUM); // calculate
Time of Update: 2018-12-04
【Directshow】VC6.0下directshow環境設定及MFC下使用注意點記錄一下: 【1】:下載DirectX9.0 安裝,例子也必須安裝 【2】:開啟...DXSDK/Samples/C++/DirectShow/BaseClasses目錄下的baseclasses.dsw工程,編譯串連,產生 Debug和Release版本(它可以產生Debug,Unicode Debug,Release,Unicode Release四個版本,只需
Time of Update: 2018-12-04
前一段時間需要將視頻快進,就用OpenCV寫了段代碼,代碼很簡單,如下:#include <stdio.h>#include <tchar.h>// TODO: 在此處引用程式需要的其他標頭檔#include "cv.h"#include "cxcore.h"#include "highgui.h"#include "time.h"#include <iostream>using namespace std;using namespace cv;int
Time of Update: 2018-12-04
得到隨機數的一個小技巧忘了這個技巧是在哪裡看到的了。原題是:怎樣計算 2×2×2 = 8 速度最快。答案:2<<<2。因為移位速度最快。雖然算隨機數不一定需要速度,但這也不失為一個好方法。下面這個語句得到1->8的隨機數。int tmp = (rand.nextInt() >>> 1) % 8 + 1; //1->8的隨機數或 int tmp = Math.abs(rand.nextInt()) % 8 + 1;