2019年7月14日 星期日

How to access the Raspberry Pi desktop with a remote desktop connection

最近在摸索Raspberry pi 想說每次都要接HDMI太麻煩了,但是SSH以及Putty都是command line,但是我要圖形介面GUI~~~~~!!
所以找個可以遠端連線的方法,其中有一個"XRDP"可能是腦殘吧~或是找的文章都........
反正呢~都有些問題,所以最後找到VNC-Viewer,好用!


  • 輸入 sudo raspi-config:


  • 選擇 Interfacing Option >> VNC >> enable:
                然後就reboot raspberry pi

  • 之後在windows裡面打開VNC-Viewer >> File >> New connection :
  • 接著在VNC Server的地方輸入 Raspberry Pi 的IP,在name的地方隨便輸入名稱就可以建立連線了!
    Raspberry Pi 的ip 只要在terminal 輸入 ifconfig 就可以顯示ip位址。
  • 最後只要在輸入Raspbian 的帳號密碼,預設帳號:pi ,密碼: raspberry




最後留下一個覺得寫得滿齊全的網站,也是我的參考網站

2019年7月5日 星期五

Gram-Schmidt process 葛蘭-史密特正交程序

我只把主要的部份留在這邊,剩下要怎麼輸入輸出就留給需要的人自己定義吧~
這邊只有得出正交基底{v1, v2, v3},名字取得一點也不專業,隨便拉~
u_vectors 是基底。
v_vectors 是正交基底。
tmp_vectors 是暫存正交基底所需要減掉的值。



void orthogonal_projection() {

        //內積計算
        v_vectors[0] = u_vectors[0];    //第一個v1 = u1        

        cout << endl << endl;

        for (int i = 1; i < nos; i++) {
            proj_wi_ui(i);
            for(int j = 0; j < i; j++){
                for(int k = 0; k < noVs; k++){

                    v_vectors[i][k] = u_vectors[i][k]  - tmp_vectors[j][k];

                }
            }
        }
    }

    void proj_wi_ui(int ui_index) {

        double denominator = 0;
        double inner_p = 0;
        //內積
        int i = 0, j;
        cout << endl;
        for (i; i < ui_index; i++) {    // Vi

            for (j = 0; j < noVs; j++) {    // Vi {1, 2, 3, 4 ...n} ex. 1 2 3 ... n

                inner_p += (u_vectors[ui_index][j] * v_vectors[i][j]);  //內積 <Ui * V1>
                denominator += pow(v_vectors[i][j], 2);                 // || Vi ^2 ||
            }

            for (int c = 0; c < noVs; c++) {
                tmp_vectors[i][c] += (inner_p / denominator) * u_vectors[i][c];
            }
            denominator = inner_p = 0;
        }       
    }