原创 Python的結構型設計模式(四) 裝飾器模式

4 裝飾器模式 修飾器是單個參數的函數,其參數也是函數,修飾器返回的新函數與經由參數傳入的原函數名稱相同,但功能更強。 4.1 函數修飾器與方法修飾器 (1)首先創建包裝函數; (2)在包裝函數調用原函數; 修飾器與“@”符號開頭

原创 Python 的行爲型設計模式(二) 橋接模式(未完待續)

2 橋接模式 橋接模式,用於將抽象與實現方法相分離。創建兩套獨立的“類體系”:“抽象體系”定義所有實行的操作,“實現體系”包含具體實現方式,抽象體系要調用實現體系完成其操作。抽象體系中的類把實現體系中的某個類實例聚會進來,而這個實

原创 圖像及其數學與物理學背景(待續)

1 引言 1.1 線性 矢量空間相關,線性空間之間的映射,存在疊加定理。如果映射是加性的且是單一性的,則稱該映射是線性的。 1.2狄拉克分佈於卷積 圖像平面上的理想衝擊是用狄克爾分佈定義的: ∫−∞+∞∫−∞+∞δ(x,y)dxd

原创 馬爾可夫鏈學習筆記

3 馬爾可夫鏈 考慮由多個隨機變量組成的系統,其演化可由一個隨機過程描述,隨機變量XnX_nXn​在時刻n取值xnx_nxn​稱爲系統在n時刻的狀態。隨機變量所有可能的值構成的空間稱爲系統的狀態空間。如果隨機過程{Xn,n=1,2

原创 拉普拉斯變換拾遺

1、前言 因筆者學生時代,複變函數相關課程,學得並不認真,以致於工作後,閱讀相關論文時,遇到拉普拉斯變換時,常不知所言,遂心生“負師友規訓之德”的愧意,於是重新記錄下拉普拉斯變換的學習歷程。供自己閒時溫故。 2、拉普拉斯變換 2.

原创 擴展卡爾曼濾波算法(待續)

1、卡爾曼濾波器定義式的變形 (1)新息過程 an=yn−bn(x^n∣n−1)a_n = y_n-b_n(\hat x_{n|n-1})an​=yn​−bn​(x^n∣n−1​) (2)狀態空間 (3)表述形式 2、實現擴展卡爾

原创 如何優化C語言的代碼空間

引言 由於進來在優化一C語言程序,前後折騰,用盡的ROM又騰出 不少空間,於是總結下所用到的方法 採用的方法 (1)減少不必要的判斷語句; 詳情是這樣的,一些判斷語句有時會因爲思維習慣,導致出現多次判斷,結合算法,可以減少判斷;

原创 Python的結構型設計模式(一) 適配器模式

1 適配器模式 適配器模式是一種接口適配技術,可通過某個類來使用另一個接口與之不兼容的類,運用此模式時,兩個類都無須改動。 運用場景: 想把某個類從其原先的應用場景拿出來放到另一個環境下運行,而這個類又不能修改,即可考慮適配器模式

原创 貝葉斯濾波器(待續)

1、給定的序列組合 當前狀態xnx_nxn​僅取決於最近的過去的狀態xn−1x_{n-1}xn−1​,通過狀態過度分佈p(xn∣xn−1)p(x_n|x_{n-1})p(xn​∣xn−1​),初始態x0x_0x0​是分佈式的,根據

原创 利用Python實現IIR濾波器

1.1 直接I型 1.2 算法實現 class filter: def __init__(self,): pass def IIR_Filter_I(self,input_array,a

原创 數據結構、算法與運用(C++語言描述)(二) 線性表--數組描述(待續)

1、數據對象和數據結構 數據對象:一組實例或者值 數據結構:是一個數據對象,同時這個對象的實例以及構成實例的元素都存在聯繫,而且這些聯繫由相關的函數規定。 2、線性表數據結構 線性表也稱有序表,它的每一個實例都是元素的一個有序集合

原创 數據結構、算法與運用(C++語言描述)(一)

一、函數與參數 1.1、傳值參數 形參: 實參: 1.2、模板函數 利用關鍵字template來定義模板T,編譯 template<class T> 1.3、引用參數 1.4、常量引用參數 這種模式指明引用參數不能被函數修改;

原创 Python 的行爲型設計模式(一) 責任鏈模式(未完待續)

1 責任鏈模式 2 命令模式 3 解釋器模式 4 迭代器模式 5 中介者模式 6 備忘錄模式 8 狀態模式 9 策略模式 10 模板方法模式 11 訪問者模式

原创 諧振電路Q值的意義

1、Q值等於諧振電路中存儲能量與每個週期內消耗的能量的2π倍,Q值越大,意味着相對於存儲的能量來說所需付出的能量耗散約束,即諧振電路儲能的效率越高; Q=2πWS/WRQ=2π W_S/W_R Q=2πWS​/WR​ 2、諧振電路

原创 USB PD快充協議詳解(待續)

1、原理 1.1 USB OTG充電原理: (1)USB OTG的PHY監控VBUS電壓,如果有VBUS的5V電壓存在,並且檢測到OTG ID腳是1K歐的下拉電阻(不是 OTG HOST模式 ,其ID電阻小於1K)就說明該電纜支持