Time of Update: 2018-12-04
目 錄 1.初始化矩陣:. 12.IplImage 到cvMat的轉換. 13.cvArr(IplImage或者cvMat)轉化為cvMat 14.映像直接操作. 25.cvMat的直接操作. 36.間接訪問cvMat 47.修改矩陣的形狀——cvReshape的操作. 58.計算色彩距離. 7OpenCV學習之CvMat的用法詳解及執行個體目 錄 1.初始化矩陣:. 12.IplImage 到cvMat的轉換.
Time of Update: 2018-12-04
自然狀態下,用plot畫的是折線,而不是平滑曲線。有兩種方法可以畫平滑曲線,第一種是擬合的方法,第二種是用spcrv,其實原理應該都一樣就是插值。下面是來源程式,大家可以根據需要自行選擇,更改擬合的參數。clc,clear;a = 1:1:6; %橫座標b = [8.0 9.0 10.0 15.0 35.0 40.0]; %縱座標plot(a, b, 'b'); %自然狀態的畫圖效果hold on;%第一種,畫平滑曲線的方法c = polyfit(a, b, 2);
Time of Update: 2018-12-04
一種思路是利用兩次冒泡法,因為第一次冒泡,最大的在a[n-1],第二次冒泡後,次最大值在a[n-2]這樣直接返回即可。核心代碼如下:for(int i=0; i<2; i++)for(int j=0; j<n-i-1; j++){if(a[j] >a[j+1])swap(a[j], a[j+1]);}return a[n-2];但是這樣做,顯然效率不夠高,幾乎要遍曆兩次,有沒有遍曆一次就可以找到呢?第二種思路:首先看源碼:int find2Max(int a[], int n)
Time of Update: 2018-12-04
當用Qt的qtcreator建純C/C++項目時,qt會調用一個控制台,類似windows下的console。預設狀態下是不顯示中文的,NND。Google了一圈無解。 求人不如求己啊!記得最初啟動qt的這個控制台時,qt提示沒有Xterm。也就是說Qt調用的控制台是Xterm,參照配置Xterm的兩篇文章:http://blog.sina.com.cn/s/blog_6a75ed3d0100p10b.htmlhttp://tieba.baidu.com/p/179
Time of Update: 2018-12-04
現在假設,有10個人的人臉,每個人有10幅人臉樣本,一共100幅人臉。類內測試: 如果採用1:1認證的方式,那麼類內,也就是同類進行認證測試,每個人最多可以測試(9+8+7...1)=(9*(9+1))/2. 可以這麼理解,第一個人臉和後面9個依次認證依次,然後第二個人臉和後面8個依次認證,最後求和。【等差數列的求和:(n*(n+1)*d)/2 】 因為是10個人,所以類內一共可以測試10*9*(9+1)/2次。總結如下:有N類志願者,每類志願者有M個樣本,則採樣1:
Time of Update: 2018-12-04
要進行NFS掛載,第一步是使虛擬機器橋接上網,橋接上網下面的小框 不用勾選。下面要將其IP地址和宿主機IP配置在同一網段,破費周折終於成功。記錄下步驟:一,我最初是參照http://hi.baidu.com/%D1%E3%C9%F9%C1%F4/blog/item/b0045efd9c02773608244d01.html這裡,進行了以下三個步驟:1),# ifconfig eth0 up (註解:系統裝好後預設的網卡是eth0,此命令將這塊網卡啟用。)2),# chkconfig
Time of Update: 2018-12-04
首先下載opencv2.0的源碼http://www.pudn.com/downloads471/sourcecode/graph/opencv/detail1972436.html,opencv從2.1以後(包括2.1)無論安裝到x86還是移植都必須使用cmake,移植的時候用cmake有時候又不能成功。無奈只能用opencv2.0,它還保留著./configure 、make 、make
Time of Update: 2018-12-04
老規矩,先說下問題:串口在接收pc端發來的資料時(100個bytes,每200ms發送一次),偶爾會丟一些資料。某一次的測試記錄如下:第一次丟資料 發送總量60多萬位元組 丟了27個第二次丟資料 發送總量80多萬位元組 (在上一次發送的基礎上又)丟了40個第三次丟資料 發送總量190多萬位元組 (在上一次發送的基礎上又)丟了37個 以上資料要說明的是所丟的資料是一個隨機情況,因為如果我把環境清空(例如斷電重啟)而pc端的發送條件不變,那麼丟資料的情況就不是上面顯示的記錄了。
Time of Update: 2018-12-04
參考前文利用安全模式成功登陸,然後修改密碼,等於給MySql設定了密碼。登陸進去後,想建立一個資料庫測試下。得到的結果確實:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement非常詭異啊,明明用密碼登陸進去了,怎麼還提示要求輸入密碼。參考官方的一個文檔,見http://dev.mysql.com/doc/refman/5.6/en/alter-user.html。如下操作後就ok了: mysql>
Time of Update: 2018-12-04
一、功能介紹1、有拖拉功能,將視頻直接拖進,播放器即可播放視頻2、可以有加密視頻,將放視頻的檔案夾加密3、有定時開關機的功能4、有網上直接看視頻的功能5、有開啟本地視頻的功能6、可以瀏覽照片7、可以播放歌曲8、有最新電影推薦功能9、播放清單10、1499小遊戲,線上玩二、llplayer 以完成功能1、正常播放ok2、檔案夾開啟ok, 不能重複開啟void MainWindow::slotOpenFile()//開啟檔案ok{//
Time of Update: 2018-12-04
今天去匯川面試,面試官的一席話讓我受益匪淺。找工作時,一定要看三個圈:第一個圈,自己的能力、強項。第二個圈,自己的意願第三個圈,外部環境,公司所能提供的崗位!如果這三個圈有交集,這份工作無疑是一份滿意的工作!如果沒有交集,那就看自己的意願,是否願意放棄自己的強項,轉學其他領域。
Time of Update: 2018-12-04
宏定義發生在先行編譯階段,簡單的說本質就是文本替換。使用時,有以下注意事項:1,用宏定義運算式時,要使用完備的括弧如一下三個例子:#define ADD(a,b) a+b#define ADD(a, b) (a + b)#define ADD(a, b) (a) +(b)這三種定義,全部都是不符合要求的。陷阱如下:在計算ADD(a,b)*ADD(c,d)時,顯然第一種出問題了。#define MULTIPLE(a, b) (a*b)
Time of Update: 2018-12-04
sizeof()函數只計算棧中分配的大小。 /************************************************************************//* sizeof 只求棧中的大小,存放在資料區的不包括在內,如下的static int b *//************************************************************************/#include<iostream>using
Time of Update: 2018-12-04
為了方便問題描述,假設n = 10,即數組a[10]裡有10個數,範圍是從1到10,且裡面只有兩個數的值是相同的。如何求這個相同的數值。常規思路:1,先冒泡排序,然後用while迴圈找出這個相同的數值2,直接用冒泡的思路,i從0到n-2,j = i+1,依次比,找出相同的數值。上述複雜度都太高,而且沒有充分利用到這裡面的特殊條件:有且只有兩個值是相同的。事實上,可以對這個數組a[10]求和 = sum1,然後對從1到10進行求和 = sum2,然後求abs(sum1 -
Time of Update: 2018-12-04
關於串口的知識 3個獨立的串口,每一個都可以利用DMA和中斷方式操作。每個包含2個64位元組FIFO,一個接,一個發。 非FIFO模式相當於FIFO模式的一個寄存器緩衝模式。 每一個UART有7種狀態,overrun錯誤,校正錯誤,幀錯誤,斷點,接收緩衝區準備好,發送緩衝區為空白,發送移位寄存器為空白。 當接收移位寄存器中的資料傳給FIFO的時候,且接收的資料觸發了Rx FIFO的閥值,Rx中斷產生了。 發送器中FIFO的還未發得資料到達Tx
Time of Update: 2018-12-04
這裡先講一種類似於快速排序的方法。注意題目要求,不要求完全排序,只要求最快解決問題!這個題是我面試NI公司時,對方問我的。原話是從1億個資料裡,找出前一百個最大的。首先看源碼吧:void main(int a[], int start, int end, int N)//從數組a裡,找出前N個最大的。如果是a[100],則start = 0, end = 99.注意這個索 引問題{ int mid = (start + end)/2; int i = start, j =
Time of Update: 2018-12-04
轉載http://blog.sina.com.cn/s/blog_620b71230100f71g.html字元裝置 register_chrdev_region()、alloc_chrdev_region 核心中所有已指派的字元裝置編號都記錄在一個名為 chrdevs 散列表裡。該散列表中的每一個元素是一個 char_device_struct 結構,它的定義如下:static struct char_device_struct {struct char_device_struct
Time of Update: 2018-12-04
http://blog.csdn.net/songjinshi/article/details/65213191.MPlayer 的特殊控制模式 MPlayer 本身是一個命令列的程式,但是他提供了有後台模式(Slave),可以把自己輸出重新導向到一個指定的X Windows視窗中,並且可以通過管道向其發送命令來控制,這樣就為GUI程式提供一個簡單的編程介面.讓其用圖形介面來控制.Gnome下的 gmplayer其實就是通過這個方法來在圖形介面調用MPlayer.
Time of Update: 2018-12-04
要求輸入一段字串,統計字串中單詞的個數!#include<stdio.h>#include<string.h>int IsChar(char ch){ if((ch>='a')&&(ch<='z')||(ch>='A')&&(ch<='Z')) { return 1; } else { return 0; }}int main(int argc,char *argv[]){char buf[256]={0};
Time of Update: 2018-12-04
核心中每個字元裝置都對應一個 cdev結構的變數,下面是它的定義:linux-2.6.22/include/linux/cdev.hstruct cdev {struct kobject kobj; // 每個 cdev都是一個 kobjectstruct module *owner; //指向實現驅動的模組const struct file_operations *ops; // 操縱這個字元裝置檔案的方法struct list_head list;