用GCP Compute Engine架設前後端分離(一) 前言

從去年開始做的side project 主要是想要看看gitlab.com的CICD怎麼做的練習

同時也想要練習前端 + django rest

所以就拿我們溯溪協會的網站來練手,刻出一個新的來

那後來就順勢要變成正式的新版本上線了

介紹一下Tech stack

前端:一開始是用angular 不過後來公司開始用react,還沒刻太多頁面就直接改成React了

後端:django rest framework 主要是想用他的後台跟ORM 把DB管理這個部分簡化 如果有問題不用遠端進去下SQL就可以改資料

不過必須說 在弄migration真的是一個大問題,如果有開分枝然後都做了改動 回來很容易爆掉

中間洗掉重弄好幾次

DB:一開始就用sqllite 然後一開始在heroku上面就用heroku postgres 現在在VM上面起了一個mysql

Proxy:一開始用安裝Ubuntu Apache 後來有中文亂碼問題,改成用docker nginx-certbot

GCP: Host在Compute Engine上面 +Firewall,CICD 用Cloud Run

繼續閱讀 “用GCP Compute Engine架設前後端分離(一) 前言"

在Window佈署Apache & Flask

這次是要佈署一個tensorflow的影像辨識在目前的系統上,既有的方式是在.NET上面呼叫bat檔案 再執行py檔完成這件事情

這樣做主要有幾個問題

速度慢:在每一次的request都需要重新開啟py檔,代表都會重新import,尤其tensorflow本身就需要時間

Debug困難:因為所有的錯都無法讀到,在.NET這邊就只會timeout error

先前的開發使用了試誤法,把環境變數 conda的環境位置都設定在bat檔案裏面才能開

SET python_root=
SET miniconda_root=
SET PATH=

這些設定好之後才能順利執行

而這次由於Debug實在太麻煩,我就決定直接寫Flask API把他完成

在執行面很快就可以架好一個local host在windows server上面,但是問題是要如何正式佈署

就是在重開機等操作之後仍正常開啟

我試過了 本篇文章 是利用windows task manager自動執行bat

不過也是不好debug,於是我就看到了用Apache開Flask

於是 第一步是開啟Apache

下載好Apache (從Apache Lounge) 之後解壓縮到 C:\Apache24

執行裡面bin\httpd.exe 就會在 local host看到 it works的字樣代表成功

這裡第一個會遇到的問題就是 如果預設的80 port已經有開了什麼服務,就必須換一個port

在 conf資料夾裡面的 httpd.conf可以修改

然後接下來就是要開啟Flask

在想要的資料夾 這裡用C:\dev

我試過好像在太多層也會出一些問題

資料夾裡面就是 appname資料夾 裡面放 __init__.py; wsgi_scripts資料夾裡面放appname.wsgi

結論 windows就用IIS佈署好了

RealSense 學習筆記/教學/分享(六):PyQT製作介面GUI

GUI: graphic user interface

要給其他同事使用務必要做成有介面 所以就在主要程式都完成後,開始這部分

我做了兩版,Tkinter跟PyQt

Tkinter真的太2000年了 雖然是內建很方便,但是就是要用新一點的

最後做出來的是如下:

GitHub https://github.com/soarwing52/RealsensePython/blob/master/proccessor.py

繼續閱讀 “RealSense 學習筆記/教學/分享(六):PyQT製作介面GUI"

專案簡介:深度相機的應用 從資料蒐集到資料應用 萬能的Python呀 請賜與我神奇的力量!

這是我這半年來主要的大專案,中間用了許多不同的組成,分成許多小專案開發

目前公司的主要業務為道路調查,類似街景車的在各道路、產業道路拍照

而本案的需求是公司想要有可以測量的照片

從硬體選購-深度相機程式開發與測試-實地測試-視覺化GUI製作由我獨立完成

中間有使用到的一些程式庫有:

電腦視覺 opencv
GPS Port應用
Realsense 程式庫
PyQt, Tkinter的GUI
Flask app
ArcGIS/QGIS 插件製作

繼續閱讀 “專案簡介:深度相機的應用 從資料蒐集到資料應用 萬能的Python呀 請賜與我神奇的力量!"

Roadmap: Real Sense Application

The RealSense application is a solo project combined many different components I created during my job in the road surveying company

As the idea of the project is to let colleagues can measure objects such as road width, sidewalk, and even cracks.

Since the implementation can’t simply program through it, this project has:

Hardware selection, Computer Vision, Location Service, Depth Camera Library, GUI visualization

Further development with

ArcGIS/QGIS plugin creation, Flask web-framework

繼續閱讀 “Roadmap: Real Sense Application"

The RealSense application is a solo project combined many different components I created during my job in the road surveying company

As the idea of the project is to let colleagues can measure objects such as road width, sidewalk, and even cracks.

Since the implementation can’t simply program through it, this project has:

Hardware selection, Computer Vision, Location Service, Depth Camera Library, GUI visualization

Further development with

ArcGIS/QGIS plugin creation, Flask web-framework

繼續閱讀 “Roadmap: Real Sense Application"