寫教學的最大目的是教會未來的自己

pupuliao

openCV K-means的用法

最近為了去雜訊,測視使用了 k-means的方法減少,效果不錯,有效解決因為少數雜訊影響重心位置

參考資料

http://forum.gamer.com.tw/C.php?bsn=60292&snA=1518

http://www.aishack.in/2010/08/k-means-clustering-in-opencv/

http://rritw.com/a/bianchengyuyan/C__/20121123/258942.html

 

這三篇教學文當中,我使用第一篇的範力十分簡單好懂

第二篇視所有參數的英文說明

第三篇是中文說明

 

本文教學開始

 

    Mat model(Data.size(),2, CV_32F );//sample

//建立一個矩陣 每一筆資料 一個row,cow代表維度,這次我是算點作標 所以是二維

    vector<Point *>::iterator tempPoint; //事先算好的點陣列
    int i=0;

//把資料塞入矩陣中
    for(tempPoint=Data.begin();tempPoint!=Data.end();tempPoint++,i++)
    {
        model.at<float>(i,0)=(*tempPoint)->x;
        model.at<float>(i,1)=(*tempPoint)->y;
    }
    
    int k=2; //要分幾群
    Mat cluster; //會跑出結果,紀錄每個row 最後是分配到哪一個cluster
    int attempts = 2;//應該是執行次數
    Mat centers; //記錄那個cluster的值
    //使用k means分群
    kmeans(model, k, cluster,TermCriteria(CV_TERMCRIT_ITER|CV_TERMCRIT_EPS, 10, 1), attempts,KMEANS_PP_CENTERS,centers );

    //,TermCriteria(CV_TERMCRIT_ITER|CV_TERMCRIT_EPS, 10, 1),  這裡有三個參數,決定k-means何時結束,第二個參數是指迭代最大次數,第三個參數是精確度多少,第一個參數是指依照前兩個參數的哪一個為準,以範例中就是兩者都參照,以 or 的方式決定

 

 

//以下是因為我指是用這方法去雜訊,所以要找出最多點的地方
    int countMAX=0;
    int MAXIndex;
    int *tempSum =new int[k];
    memset(tempSum,0,sizeof(int)*k);
    for(int i=0;i<Data.size();i++)
    {
        tempSum[cluster.at(i,0)]++;
        if(tempSum[cluster.at(i,0)]>countMAX)
        {
            countMAX=tempSum[cluster.at(i,0)];
            MAXIndex=cluster.at<int>(i,0);
        }
    }
    Point result(centers.at<float>(MAXIndex, 0),centers.at<float>(MAXIndex, 1));

 

 

Post to Twitter Post to Plurk Post to Facebook Send Gmail

創世中文往台灣充值經驗談

最近終於開始邁向從看盜版網站轉向正版網站(其實是懶得找)

 

對岸的 金錢儲值 對台灣來說很不方便,因為他們用的交易系統和我們完全不同

首先幾乎通行全世界的 VISA信用卡 無法在 這種數位商品上刷卡(不給過阿)

 

首先先講 創世的 交易方式

在網站方提供的眾多儲值方是中,現在大概只有{支付寶} 可以用,支付寶如果是在掏寶網上,是可以接受使用 VISA 刷卡,就是透過支付寶中轉

但是在線上虛擬商品上就沒辦法了,我現在使用的方法是找台灣代儲公司幫忙

我是使用  百購站http://www.buygo.tw/faq.aspx  幫忙,沒辦法的在手續費跟匯率上 都要給人賺….

 

 

Post to Twitter Post to Plurk Post to Facebook Send Gmail

FreeBSD忘記密碼解決方法

有些時候,會剛好接手道 資料不全的server,就有機會碰到 帳號密碼消失

最近剛好碰到,找了一下方法 記錄下來

資料來源:http://www.hkcode.com/linux-bsd-notes/399

 

1. 重新開啟 FreeBSD 主機。

2. 在 "Welcome to FreeBSD!" 開啟選單中按 "4" 選擇 "Boot FreeBSD in single user mode"。

3. 然後會看到 "When prompted Enter full pathname of shell or RETURN for /bin/sh:",直接按 Enter。

4. 這時便會直接進入 single user mode,輸入以下指令重新掛載根目錄 "/" 為可讀寫:

# mount -u /
# mount -a

5. 用 passwd 重新設定 root 密碼:

# passwd

6. 最後重新啟動即可:

# reboot

 

 

如果mount 出現問題

請先執行fsck -y

Post to Twitter Post to Plurk Post to Facebook Send Gmail

yahoo 部落格轉wordpress 教學

參考資料

㊣硬闖WP-5:如何從「無名小站」部落格搬家、轉換到WordPress?

㊣硬闖WP-6:如何將「無名小站」的相簿圖片搬家、備份到免費圖床空間?

 

如果單純 無名轉 wordpress我想應該原理差不多,請自己測試

 

因為我手上有圖片的部落格只有yahoo 部落格,沒有無名

不過我發現現在這兩邊的備份其實都滿方便的

這是我下載下來的部落格備份

blog1解壓縮出來的檔案

blog2把這些資料夾上傳到wp-content中

並把其中 tw-blog_日期_movable-type.txt 這個檔案改名成mt-export.txt

 

Continue reading

Post to Twitter Post to Plurk Post to Facebook Send Gmail

nexus 7 2代 16G wifi 開箱文

距離上一次的 nesus 7 32G開箱文 不到一年,因為剛好家裡有人出國,就請他 把新上市的nexus7 二帶了回來,不過是16G的版本

新到手的的nexus 7 這次的包裝改成藍色外殼

 

2013-08-06 23.39.19

拆開外殼,配上一張發票 這台價格 229USD

Continue reading

Post to Twitter Post to Plurk Post to Facebook Send Gmail

sony VAIO 開箱文

今天實驗室 收到一台筆電

雖然不是給我用,但是身為設備的我 就手癢來弄篇開箱文好了XD

 

型號 sony viao svS13136PWB.

 

先來張合影,底下是本體 上面是筆電袋

2013-06-28 15.29.26

2013-06-28 15.29.41

它的詳細規格,最亮眼的地方在於它的 混和硬碟吧,我也想買一顆

2013-06-28 15.30.03

本體內的內容物

說時在的 廠商省成本省太兇了吧,怎麼沒滑鼠…..阿 好吧 以前的筆電袋也比較好

2013-06-28 15.31.28

開啟的樣子

2013-06-28 15.33.02

 

開機後 要先做起始設定

語言、帳號、密碼什麼的

另外線在可以直接綁msn 帳號

最後跳入結束畫面

2013-06-28 16.08.33

 

Post to Twitter Post to Plurk Post to Facebook Send Gmail

ubunru 虛擬主機 VirtualHost 設定

虛擬主機 VirtualHost

最主要的目的是 讓一台server 一個IP 的情況下 可以直接運作多個網站

 

在ubuntu server 預設的情況下 就是使用VirtualHost

 

以下是執行指令

#cd /etc/apache2/sites-available

#cp default [第二個網站網址]

#vim [第二個網站網址]

修改和增加下列資訊

 

        ServerAdmin [email protected]
        ServerName  [第二個網站網址]

        DocumentRoot /home/pupuliao/web/ownCloud/
        <Directory [第二個網站存放位置] >
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

#cd ..

#vim apache2.conf

增加一條 ServerName 127.0.0.1:80

#a2ensite [第二個網站網址]

# /etc/init.d/apache2 reload

 

收工

Post to Twitter Post to Plurk Post to Facebook Send Gmail

ubuntu server 開機自動發信通知(使用gmail)

參考資料

http://tschci.blogspot.tw/2009/04/ubuntu.html

http://fourdollars.blogspot.tw/2009/08/ssmtp-gmail.html

 

最近弄到一台server

因為是寄放在別人的機櫃裡,因為有些原因我想知道 server 何時重開機

所以寫了 下列教學

 

 

1. 安裝 SMTP

apt-get install ssmtp

2. 設定SMTP

vim /etc/ssmtp/ssmtp.conf 加入下列資料

AuthUser=user.name@gmail.com
AuthPass=password
FromLineOverride=YES
mailhub=smtp.gmail.com:587
UseSTARTTLS=YES

 

3.測試

 echo "This is a test mail." | mail -s "test mail" user.name@gmail.com

有收到信就表示成功了

 

4.撰寫shell script

vim mail.sh

#!/bin/sh

t=$(date +%Y%m%d%H%M%S )
sudo echo "標題"$t |mail -s "open server"  [email protected]

5.測試 shell script

sh mail.sh

檢查是否收到信

 

6.設定自動執行

cp mail.sh /etc/init.d

sudo update-rc.d mail.sh defaults 99 1

 

完成收工

 

Post to Twitter Post to Plurk Post to Facebook Send Gmail

Copyright © 2024. All Rights Reserved.

歡迎光臨
初音