從一個簡單的使用TCP例子開始socket編程,其基本步驟如下:server client +++++++ ++++++++建立socket 建立socket+++++++
這幾天需要調試X-server的東西,需要在遠端機器romote上進行圖形介面的展示。關於X-server的東西我就不說了,畢竟如果你已經遇到了這個錯誤,說明你已經有所瞭解了。假定機器A是用戶端,機器B是服務端(IP地址為:168.12.89.8)。下面是具體的配置步驟:1。開啟用戶端的終端,進行環境變數的配置,使用如下命令:export DISPLAY=168.12.89.8:0.02。開啟服務端的終端,進行一系列的配置。首先執行xhost
今天遇到一個編譯問題,比如有三個檔案 a.h, b.h, c.h 定義了三個類 a,b, c,並且沒有.cpp檔案,都是在.h裡面實現的,發現c.h 包含了a.h,但說不認識 a。後來看了一下原來是形成了環狀包含, a.h, 包含了 b.h, b.h又包含了c.h,所以編譯a的時候沒有完成就又去編c去了,而c又要用到a,所有編譯不過了。我們可以用#pragma message("xxx")來讓編譯器輸出資訊,以確定編譯順序,找到問題所在。
老闆一直說裝svn,一直忙沒顧上,今天研究了下,環境搭建完了,跟大家分享下經驗首先當然是下載軟體了Apache:http://httpd.apache.org/Subversion:http://subversion.tigris.org/用戶端:tortoiseSVN
實驗室很多東西都是web端的工作,需要學習下,所以: 首先:搭建環境:比如apache, tomcat, mysqle等等這些東西的配置很麻煩,但如果會配置,應該會對各個模組間的工作更熟悉吧這裡我推薦xampp這個如軟體它可以把所有的東西都配置好了方便我們開發 再次:看看搭建需要學什麼東西,也就是語言了:javescript, php, pythen, php,
TCMalloc (google-perftools) 是用於最佳化C++寫的多線程應用,比glibc 2.3的malloc快。這個模組可以用來讓MySQL在高並發下記憶體佔用更加穩定。下載二個軟體地址:google-perftools:http://code.google.com/p/google-perftools/libunwind:http://download.savannah.gnu.org/releases/libunwind/安裝步驟:1.64位作業系統請先安裝
原文連結:http://blog.163.com/crazyzcs@126/blog/static/129742050201021911542817/K-means聚類演算法採用的是將N*P的矩陣X劃分為K個類,使得類內對象之間的距離最大,而類之間的距離最小。使用方法:Idx=Kmeans(X,K)[Idx,C]=Kmeans(X,K) [Idx,C,sumD]=Kmeans(X,K) [Idx,C,sumD,D]=Kmeans(X,K) […]=Kmeans(…,’Param1’,Val1,’
http://www.cnblogs.com/justinyo/archive/2013/03/12/2956438.html為了查看linux下malloc的實現函數,下載了Glibc的源碼檔案,可是找不到實現的函數在哪裡。看檔案名稱 應該是在malloc/malloc.c裡面。 發現__libc_malloc的實現比較像。 怎麼從malloc到__libc_malloc的呢? 看到檔案裡有一個語句有點苗頭 來看看strong_alias的實現_typeof (name) aliasname
轉自:http://blog.sina.com.cn/s/blog_484237d5010002km.htmlstrncpy 原型:extern char *strncpy(char *dest, char *src, int n); 用法:#include <string.h> 功能:把src所指由NULL結束的字串的前n個位元組複製到dest所指的數組中。 說明:
論epoll的使用 前幾天回答一個問題,是關於我們項目中使用的epoll模式的,因為記不大清了,感覺應該使用的就是epoll的高速模式,也就是ET(edge-trigger)模式。這兩天閑暇的時候,開啟代碼又看了一下,在epoll事件註冊時並未標記ET模式,看來實際使用的是epoll預設的LT(level-trigger )模式,為什麼呢?使用LT意味著 只要 fd 處於 readable/writable 狀態,每次 epoll_wait 時都會返回該
需要對20000多圖片進行標註圖片存在mongodb裡面,設計是這樣,程式調用資料顯示在網頁,認為進行標註,標註的結果重新存在mongodb裡面,知道所有的資料標記完成。兩個部分,顯示部分和背景資料處理部分。顯示部分代碼如下:<pre name="code" class="html"><script type="text/javascript"
一種說法: gmake是GNU Make的縮寫。 Linux系統內容下的make就是GNU Make,之所以有gmake,是因為在別的平台上,make一般被佔用,GNU make只好叫gmake了。 比如在安裝二進位檔案進行編譯時間要使用make命令,但如果在Solaris或其他非GNU系統中運行,必須使用GNU make,而不是使用系統內建的make版本, 這時要用gmake代替make進行編譯。 另一種說法:
想使用CvSVM進行訓練和檢測自己寫了個程式,訓練的結果出來了,但檢測達不到自己希望的程度我希望說可以檢測處一張圖片的那個位置有人體但是CvSVM似乎緊緊是返回1和0使用hog.detectMultiScale(img, found, 0, Size(8,8), Size(32,32), 1.05,
請看下面這段代碼:#include <stdio.h>int main(){int x,y;x = 0;y = 1;if(x == 0)if(y == 0)printf("x == 0 && y == 0\n");else printf("x!=0\n");return
1)原理分析線程池的核心設計思想是系統在初始化時,建立一定數量的服務線程,並使他們處於空閑狀態,若當前有新使用者到來,則系統先尋找當前有無空閑線程,若有則立即為其分配服務線程,如沒有,則將新使用者加入待服務隊列,並在其他使用者結束服務時,再重新為其分配服務線程。新使用者如果在等待服務隊列裡的時間過長,會影響使用者體驗。方法:1、動態建立新服務線程,服務結束後,該線程加入到線性池,但大量的使用者下,使線程池變得很大,最後因資源消耗過多。2、在1的基礎上增加線程資源回收機制。當線程規模達到一定程度,
#include <fstream>#include <string>#include <cv.h>#include <highgui.h>#include <ml.h>#include <iostream>#include <fstream>#include <string>#include <vector>#include "cvaux.h"#include <iostream&
I(x,y) ~ ((uchar*)(img->imageData + img->widthStep*y))[x]這是openCV中文網站裡推薦的方法,通過指標的方式來訪問。開始的時候我試著直接列印出每個像素的值,但是老是失敗。請教過同學之後搞明白了:這裡只是訪問得到的像素的值屬於uchar類型,所以需要強制轉換為int類型後才能正確的顯示出來。即 :(int)((uchar *)(src->imageData + src->width * x))[y]
首先,參看。假設褐色的大圖為待測圖片,紅色小圖為模板圖片。 1.result中資料的含義。 模板匹配函數cvMatchTemplate依次計算模板與待測圖片的重疊地區的相似性,並將結果存入映射映像result當中,也就是說result映像中的每一個點的值代表了一次相似性比較結果。 2.result的尺寸大小。
1. 簡介CART(Classification and Regression Tree)是一個採用二分法遞迴劃分產生的二叉樹。粗略的講,分類結果是離散的就是分類,是連續的實數就是迴歸樹。2. 特點2.1 優點本質上是無參估計(non-parametric)。就是不管待估計的參數是來自什麼神奇古怪的空間,來者不拒。至於分類結果如何,呃, 那是另一回事可以處理輸入變數不全的情況(miss
Linux在提供了及其強大的功能和自由度的同時,其繁瑣的庫依賴和維護有時確實是件非常頭疼的事情。 花了一下午從Ubuntu 9.04升級到9.10,升級本身很快,沒有遇到大的問題。但重新編譯項目工程時,仍然試圖連結libdc1394_control.so.13和 libraw1394.so.8。 很早以前給項目寫過1394的driver,當時正好是libdc1394庫從1.0升級到2.0。所以記得libdc1394_control好像是1.0下的名字。而升級過程中明確告知libdc1394-13