網頁

2020年10月27日 星期二

[自己的app自己做]12星座用清單簡化if並用rar處理大量圖檔


牡羊座 3.21-4.19 【Aries】
金牛座 4.20-5.20 【Taurus】
雙子座 5.21-6.21 【Gemini】  
巨蟹座 6.22-7.22 【Cancer】 
獅子座 7.23-8.22 【Leo】 
處女座 8.23-9.22 【Virgo】 
天秤座 9.23-10.23 【Libra】 
天蠍座 10.24-11.21 【Scorpio】 
射手座 11.22-12.20 【Sagittarius】
摩羯座 12.21-1.20 【Capricorn】 
水瓶座 1.21-2.19 【Aquarius】 
雙魚座 2.20-3.20 【Pisces】

2020年10月20日 星期二

[自己的APP自己做]13星座& dataPicker


此app僅處理是否為蛇夫座,以及如何使用日期選擇器
 
寶瓶座(水瓶座) 1.21-2.19 【Aquarius】 
雙魚座 2.20-3.20 【Pisces】 
白羊座(牡羊座) 3.21-4.19 【Aries】
金牛座 4.20-5.20 【Taurus】
雙子座 5.21-6.21 【Gemini】  
巨蟹座 6.22-7.22 【Cancer】 
獅子座 7.23-8.22 【Leo】 
室女座(處女座) 8.23-9.22 【Virgo】 
天秤座 9.23-10.23 【Libra】 
天蠍座 10.24-11.21 【Scorpio】 
人馬座(射手座) 11.22-12.20 【Sagittarius】
摩羯座 12.21-1.20 【Capricorn】
==================
提示:一個星座的字串清單、一個該星座在某月份開始日期的清單,就可避免一連串的if-else  if。注意ai2的清單index從1開始。
 

2020年10月14日 星期三

Mecanum Wheel麥輪Robomaster小車圓周運動解析


Mecanum Wheel麥輪Robomaster小車圓周運動解析,根據向量分析可以預測小車的圓周運動行為,甚至是運動圓周直徑等重要參數。透過List存取小車所行經的座標點,利於之後的數據分析。因輪子狀態,路面情況,實測數值會有顯著差異。透過實驗可以推測運動行為「Mecanum Wheel麥輪Robomaster運動向量分析」https://youtu.be/gLkwV6hoTh4
與麥輪旋轉速率呈線性轉換,這也與物理力學分析吻合。

2020年9月6日 星期日

Arduino C測試小車DC馬達、LED燈

 
Arduino C測試小車DC馬達、LED燈。if-else & switch-case練習

2020年8月24日 星期一

2020年程式語言排名



2020年程式語言排名。老師少年時學C語言,到現在都還很受用。觀察兩項不同網站排名,用; {的主流程式語言C, C++, Java排名都在前五。Python也在很前面。至於其他的,COBOL因covid-19疫情躍升,Arduino如以程式語言視之,在IEEE Spectrum也進入前十大。網頁用的Javascript也進入前十大。
如果要問老師,學哪種最好,當然要先看目的,也要用適當的開發工具IDE。(對於想要同時兼修Unix技能的,另當別論,不過還是建議用vim,要比vi好,至少指令對了,顏色會對)

2020年8月20日 星期四

Linux C++用boost::filesystem捉opencv動態函式庫檔



雖說C++17有filesystem,但連GCC g++ 9.3都好像支援不完整,就用boost::filesystem
openCV升級太多次,要找檔名是 libopencvXXXX.so.4.4.0

2020年8月19日 星期三

2020年8月18日 星期二

十二生肖判斷與圖檔C++交談式xeus-cling/Jupyter開發



十二生肖判斷與圖檔CPP xeus cling Jupyter開發。12生肖這類程式當然可用if-else-if或是switch-case寫,但用陣列其實會更好。
string Z[12]={"鼠","牛","虎","兔","龍","蛇","馬","羊","猴","雞","狗","豬"};

2020年8月17日 星期一

閏年平年判斷用交談式C++ xeus-cling/jupyter開發



閏年平年判斷用交談式CPP xeus-cling/jupyter開發。
閏年平年判斷是很好練習條件敘述if-else-if的問題。
考慮了西元前計算,(雖然西元前的羅馬人已經用四年一閏的曆法,要比古埃及進步,程式當然是用當代的曆法)雖然沒有明言if-else的決策樹,條件敘述中出現機率越高的就要放在越前面,程式實作中判斷次數的期望值應是所有不同if-else的決策樹中最少的。
問題不難,透過這C++交談式的工具xeus-cling/jupyter,
試圖也讓學程式的小朋友練習。有關軟體安裝的部份,只要有anaconda或
miniconda,可參閱https://anwendeng.blogspot.com/2020/08/cxeus-clinganacondajupyter-notebook.html

2020年8月13日 星期四

交談式C++軟體Xeus-Cling在anaconda的安裝與在jupyter notebook測試



交談式CPP軟體Xeus-Cling在anaconda的安裝與jupyter notebook測試

如果C++跟Python一樣都是可交談的方式開發,
學習上幫助絕對很大,像基本的定義函數,如算gcd,都很好用
在Jupyter有一款叫做
Xeus-Cling的interactive C++環境,
有方法可與其他C++函式庫共用

2020年8月11日 星期二

Win10 Linux子系統Ubuntu 18升級到Ubuntu 20



Win10 Linux子系統Ubuntu 18升級到Ubuntu 20。有人說灌新的就好,老師的一部實體機,就一路從ubuntu 12升級上來的。升級不就是do-release-upgrade就好?實作才發現坑很多,但也都解決了,居然比實體機或虛擬機升級麻煩。原先的WSL裝有xfce4桌面環境,升級後也很好用,老師自行裝的套件都沒問題,是WSL的bug,還好都有解。作法步驟如下:

2020年8月8日 星期六

Linux上將 openCV C 程式改成cuda程式



影片除了片頭、片尾,大部分都是在ubuntu用 obs-studio 錄的。Linux上將 openCV CPP程式改成cuda GPU程式 。前提是cuda, cudnn, openCV都裝好了,不像在Jetson Nano上,Nvidia把裝cuda, cudnn的事都搞定,這很折騰人的

2020年8月5日 星期三

Jetson-Nano Ubuntu 18設定xrdp傳送聲音



Linux透過遠端想要傳送聲音,不像Windows那麼理所當然,可行但還是實驗性的功能,有就很高興了。坑很多。純vnc應該辦不到,ssh, xrdp應該可以,但需要額外擴充。以xrdp為例,需要pulseaudio-module-xrdp。

2020年8月3日 星期一

ubuntu 18灌cudnn與opencv-cuda-dnn軟體

 

Cuda都升級到v 11了,接著就是在ubuntu 18灌cudnn與opencv-cuda-dnn軟體。 灌軟體不難,只要知道各軟體相依性就好。為此,就參考JetsonNano的cuda, cudnn安裝的路徑與lib檔,Nvidia自己家的產品還會錯嗎?就算arm64電腦跟x86-64電腦不同,軟體的相依性也沒什麼不同。再來就是用一般的Linux指令,加上會用cmake-gui,就足矣。

2020年8月1日 星期六

cuda範例在JetsonNano與桌機的測試以及各類遠端實測

 

cuda範例在JetsonNano與ubuntu 18 Linux桌機的測試以及各類遠端實測。cuda核心的安裝已經比起兩年前的v 10.0版簡易許多https://youtu.be/FuBeWPWFfLk

2020年7月29日 星期三

Jetson Nano 跑jtop與裝 Jupyter notebook,之後就玩opencv+python3


IPython是一種基於Python的互動式直譯器。相較於Python Shell,IPython提供了更強大的編輯和互動功能。Jupyter 基本上是互動式web-based的IPython計算環境,非常適合python 用。稍微一用,感覺很棒,非常適合程式初學者。

先把舊版的nodejs, npm清掉,ubuntu庫裡的都太舊:
sudo apt remove --purge nodejs npm

接著看看有無curl,(如果裝libcurl就來玩C程式)沒有就要裝

sudo apt install curl

2020年7月25日 星期六

超簡易openCV cuda C++程式在Jetson Nano編譯執行



超簡易openCV cuda C++程式在Jetson Nano編譯執行,程式撰寫很簡易,影片前面還在囉嗦安裝問題,要知道沒有環境連RUN都不可能,相同程式在win 10,沒有完整用cmake重編opencv cuda也是不行 ,沒有cuda就一切沒有,Nvidia Jetson Nano在此省了裝cuda的大事。

2020年7月22日 星期三

遠端xfce4調Nvdia Jetson Nano的PWM風扇轉速



AIOT小神器Nvidia Jetson Nano開箱才幾小時,https://youtu.be/pSvrMkW5aNQ
還沒整個調好JetsonNano,首要處理散熱問題。當然xrdp, #xfce4 桌面好了,不然怎麼遠端?馬上就調Nvdia Jetson Nano 的PWM 風扇轉速,用psensor來測機器溫度,發覺Nano溫度比室外溫度還低。

2020年7月15日 星期三

opencv::dnn C++ AI程式把黑白照片變彩色



先聲明這不是photoshop,平平是照片變彩色,我們寫程式來弄。介紹opencv::dnn把黑白照片變彩色(colorization)。

2020年7月14日 星期二

vcpkg安裝cURL工具軟體寫C程式捉網路圖與json檔



vcpkg安裝cURL工具軟體寫C程式捉網路圖與json檔。cURL工具軟體很老牌,網路資源很多。 用vcpkg安裝,自然用visual studio開發,除了副檔名是cpp外,整個程式全是用C指令。vcpkg很奇怪,有設proxy就無法安裝第三方軟體,裝了curl,後來就裝curlpp,是curl的C++ wrapper。先玩C版,以後再玩C++版。cURL雖是thread-safe,理論上可以寫多重執行緒版,but.....

2020年7月13日 星期一

C++程式用opencv::dnn套件處理圖形classification分類



CPP程式opencv::dnn套件處理圖形分類。一個不算大的C++程式,老師又大幅簡化,除了opencv, opencv::dnn要會用。常使用的C++用法也要有概念。

2020年7月5日 星期日

這不是間諜機,樹莓派3B+安裝PiCamera Streaming與測試




這不是間諜機。樹莓派3B+(Raspberry 3B+)安裝Ubuntu Core PiCamera MJPEG Streaming與測試。程式是用python3寫的,ogra1寫的
https://github.com/ogra1/picamera-streaming-demo
有空,老師也來改一改。另外一招就是用raspivid +用vlc播放rtsp,不過時間延遲有5~7秒,效果不好就不獻醜了。

8G樹莓派4B裝類Visual Studio Code軟體code-oss編寫openCV

 

8G Ram Raspberry 4B會比裝在Virtual Machine上的Linux虛擬機效能差嗎?在這樹莓派上裝類Visual Studio Code(code-oss)軟體編寫Linux C++/openCV,須知IOT的軟體須花功夫找,網路上散佈的預先編成執行碼的,大多都是針對x86架構的,對arm64的要特別去找,不然就找source codes自己用cmake或makefile編。現在apple用arm的CPU做自己的電腦,連現在最快的超級電腦「富岳」(Fugaku),cpu也是用arm的。以後arm64架構的工具軟體只會越來越多。這種找軟體不到的窘況,應該是暫時的。

SSH協定與使用/Linux與win 10跑openSSH



cd ~
ls -al
將 ″export DISPLAY=:0.0″寫入~/.bashrc
source .bashrc

ssh -X xxx@ip

2020年6月4日 星期四

Raspberry PI 4B 64-bit ubuntu 20 server安裝intel realsense2始末


老師還真能寫廢文,從失敗中吸取教訓,是每個玩open source者的必要覺悟。

2020年5月31日 星期日

Linux上的ssh,xrdp與遠端桌面



使用ssh -X 也可顯示被控端gui軟體或是完整遠端桌面,大部分的Linux電腦都會裝openssh,安裝容易。但從win10遠端client要裝第三方x11 server軟體,可參閱下列影片當中有關sshd_config設定

2020年5月26日 星期二

2020年5月25日 星期一

Linux 上的遠端連線裝 krdc, xrdp 軟體 以及 xfce4 桌面






IOT的神器樹莓派玩法也一樣,由於Raspbian桌面本身就是輕量化的,直接用就可以了。設定好了,windows的mstsc一連就通。倒是Raspberry PI直接裝Ubuntu Mate(傳說中NVidia的Jetson神器也用Ubuntu)或是Kali(這個去問知道的,別問老師),成為不同目的使用者的其他選擇。


2020年5月9日 星期六

彩色深度紅外線串流展示用linux C++/ realsense2+ openCV



彩色、深度、紅外線一次三種串流深度攝影機滿足你。採用linux CPP realsense2 openCV

2020年5月5日 星期二

ex9 費式數列迴圈以及有記憶的遞迴算法



1. Stopwatch用法
2. 迴圈法計算費氏數列
3. 有記憶的遞迴計算費氏數列

2020年4月28日 星期二

Ex8. 費氏數列Visual C#遞迴函式實作 Fibonacci sequence



1. 何謂遞迴函數?
2. 實作費氏數列,用遞迴方法

2020年3月26日 星期四

嚴重特殊傳染性肺炎[政府公開資訊]

https://data.cdc.gov.tw/dataset/aagstable-19cov/resource/a2a42de0-0600-42a5-8a44-e0ae3a14f647

https://od.cdc.gov.tw/eic/Age_County_Gender_19Cov.json

2020年3月25日 星期三

ex5 將bmi加上if else



BMI<18.5 為過輕,
18.5≦BMI<24 為正常體重,
24≦BMI<27 為過重,
BMI≧27 即為肥胖

2020年3月16日 星期一

桌機+健保卡+windows環境之口罩2.0(eMask)之體驗


不想排隊,用桌機買好買滿全家的口罩。台灣人人會上網,然而有使用智慧卡認證的經驗者(悠遊卡、一卡通等也是智慧卡,這個不算),比例也不是那麼高。有自然人憑證者更少,健保卡也是智慧卡,用的是3DES技術吧(?)也有金鑰,可用來網路預購口罩2.0(eMask)。開放網路預購也好幾天了,也才百萬人,可能連抽籤都不必,還有兩天,預祝首購成功

Step 0. 先擁有一台讀卡機