Category: Python

機器學習

# coding: utf-8 # In[30]: import numpy as np def sigmoid(x,deriv = False): if (deriv == True): return x*(1-x) return 1/(1+np.exp(-x)) # In[31]: x = np.array([[0,0,1], [0,1,1], [1,0,0], [1,1,1], [0,0,1]] ) print (x.shape) # In[32]: y= np.array([[0], [1], [1], [0], [0]] ) print (y.shape) # In[33]: np.random.seed(1) # In[34]: w0 = 2*np.random.random((3,4)) w1 = 2*np.random.random((4,1))…

Continue reading 機器學習

樹莓派架設 RTMP 串流(Streaming)伺服器,傳送即時攝影機影像

https://www.google.com.tw/amp/s/blog.gtwang.org/iot/raspberry-pi-nginx-rtmp-server-live-streaming/amp/   樹莓派架設 RTMP 串流(Streaming)伺服器,傳送即時攝影機影像 這裡介紹使用樹莓派安裝 nginx 架設 RTMP 串流伺服器,傳送即時的攝影機影像。 樹莓派加上一個網路攝影機(webcam)之後,就可以用來打造一個即時的 live 影像串流伺服器,作為簡單的監控設備,讓您透過電腦或是手機看到即時的攝影機畫面。 在本篇教學中所使用的設備與規格為: 樹莓派 Raspberry Pi B+ 開發板 羅技 C170 視訊攝影機 以下是架設 RTMP 串流(Streaming)伺服器的安裝過程。 安裝 nginx 伺服器 我們選用 nginx 再加上一個 nginx-rtmp-module 模組作為主要對外服務的伺服器,在自行編譯與安裝之前,我們先用 apt 裝一下系統套件厙中的 nginx,然後在將其移除: sudo apt-get update sudo apt-get -y install nginx sudo apt-get -y remove nginx sudo apt-get clean 這樣做的目的是讓它自動把 nginx 相依的套件安裝好,並設定好系統的環境(例如…

Continue reading 樹莓派架設 RTMP 串流(Streaming)伺服器,傳送即時攝影機影像

How to set up your own private RTMP server using nginx

https://obsproject.com/forum/resources/how-to-set-up-your-own-private-rtmp-server-using-nginx.50/   How to set up your own private RTMP server using nginx Authordodgepong Creation dateMar 24, 2014 Overview Updates (1) Reviews (19) Discussion Most people who stream enjoy using services such as Twitch.tv or Ustream to deliver video to viewers, and that works well enough. But sometimes you want some more control over your…

Continue reading How to set up your own private RTMP server using nginx

Training AI to see in the dark and take low-light photography to a new level

When shooting in low light, you need to either shoot at long exposures on a tripod or crank up the ISO if you want to shoot handheld. A group of researchers at the University of Illinois Urbana-Champaign and Intel are bringing the best of both worlds. They’ve trained AI to process low-light images so they’re…

Continue reading Training AI to see in the dark and take low-light photography to a new level

使用 Screen 指令操控 UNIX/Linux 終端機的教學與範例

這裡介紹如何使用 screen 指令來操控 UNIX/Linux 的終端機,讓工作更有效率。 screen 指令是一般 UNIX/Linux 使用者或管理者常會使用的終端機管理程式,它可以讓一個終端機當成好幾個來使用,對於以 SSH 連線到伺服器上工作的人會很有用。 通常一個終端機(terminal 或 console)只能開啓一個互動式(interactive)的 shell 來使用,而藉著 screen 的幫助,使用者可以在一個終端機下,同時開啓多個互動式的 shell,除了自己使用之外,還可以讓 session 分享給不同的使用者,或是讓執行中的 session 暫時卸離(detach),隨後再重新連接(attach)即可繼續操作。 安裝 screen 某些 Linux 發行版可能本身就已經內建 screen 這個指令了,但如果你所使用的 Linux 系統沒有安裝,通常也都可以透過套件管理程式直接安裝編譯好的版本,因為 screen 是一個很常用的指令之一,通常安裝起來不需要花費太多的力氣。 在 Debian 或 Ubuntu Linux 中若要安裝 screen 可以使用 apt-get 來安裝: sudo apt-get install screen 而 Red Hat 系列的 Linux(如 Fedora 等)則可使用…

Continue reading 使用 Screen 指令操控 UNIX/Linux 終端機的教學與範例

数学美 之 判断线段相交的最简方法

如何判断两条直线是否相交? 这很容易。平面直线,无非就是两种关系:相交 或 平行。因此,只需判断它们是否平行即可。而直线平行,等价于它们的斜率相等,只需分别计算出它们的斜率,即可做出判断。 但倘若我把“直线”换成“线段”呢——如何判断两条线段是否相交? 这就有些难度了。和 直线 不同,线段 是有固定长度的,即使它们所属的两条直线相交,这两条线段也不一定相交。 也许你会说:分情况讨论不就行了嘛: 先计算两条线段的斜率,判断是否平行。若平行,则一定不相交。 若不平行,求出两条线段的直线方程,联立之,解出交点坐标。 运用定比分点公式,判断交点是否在两条线段上。 的确,从理论上这是一个可行的办法,这也是人们手动计算时普遍采用的方法。 然而,这个方法并不怎么适用于计算机。原因如下: 计算中出现了除法(斜率计算、定比分点),因此每次计算前都要判断除数是否为 0(或接近 0)。这很麻烦,严重干扰逻辑的表达。 浮点精度丢失带来的误差。人类计算时可以采用分数,但计算机不行。计算机在储存浮点数时会有精度丢失的现象。一旦算法的计算量大起来,误差会被急剧放大,影响结果准确性。 效率低下。浮点乘除会十分耗时,不适用于对实时性要求较高的生产环境(如 游戏)。 那么,有更好的方法? 当然有。 类型预定义 本文的算法将用 python 描述,主要用到两个数据类型: 1 2 3 4 5 6 7 8 9 10 11 12 13 # 点 class Point(object): def __init__(self, x, y): self.x, self.y = x, y # 向量…

Continue reading 数学美 之 判断线段相交的最简方法