คำถามติดแท็ก kalman-filters

ตัวกรองคาลมานเป็นวิธีการทางคณิตศาสตร์โดยใช้การวัดที่มีเสียงดังที่สังเกตได้เมื่อเวลาผ่านไปเพื่อสร้างค่าที่มีแนวโน้มใกล้เคียงกับค่าที่แท้จริงของการวัดและค่าจากการคำนวณที่เกี่ยวข้อง

4
จะเข้าใจ Kalman ได้อย่างไรโดยสังหรณ์?
ขั้นตอนวิธีการกรองคาลมาทำงานดังนี้ เริ่มต้นx 0 | 0และ0}x^0|0x^0|0 \hat{\textbf{x}}_{0|0}P0|0P0|0\textbf{P}_{0|0} ในแต่ละการวนซ้ำk=1,…,nk=1,…,nk=1,\dots,n ทำนาย ที่คาดการณ์ไว้ (เป็นนิรนัย) สถานะการคาดการณ์ ทำนายความแปรปรวนร่วม (เบื้องต้น)อัปเดตPk| k-1=FkPk-1| k-1F T k +Qkx^k|k−1=Fkx^k−1|k−1+Bkukx^k|k−1=Fkx^k−1|k−1+Bkuk \hat{\textbf{x}}_{k|k-1} = \textbf{F}_{k}\hat{\textbf{x}}_{k-1|k-1} + \textbf{B}_{k} \textbf{u}_{k} Pk|k−1=FkPk−1|k−1FTk+QkPk|k−1=FkPk−1|k−1FkT+Qk \textbf{P}_{k|k-1} = \textbf{F}_{k} \textbf{P}_{k-1|k-1} \textbf{F}_{k}^{\text{T}} + \textbf{Q}_{k} นวัตกรรมหรือการวัดส่วนที่เหลือ นวัตกรรม (หรือส่วนที่เหลือ) ความแปรปรวน Optimal Kalman ได้ Updated (ก posteriori) ประมาณการรัฐ อัปเดตแล้ว (ผู้หลัง) ประมาณความแปรปรวน \ textbf {P} _ …

1
ตัวกรองคาลมานสำหรับตำแหน่งและความเร็ว: แนะนำการประมาณความเร็ว
ขอบคุณทุกคนที่โพสต์ความเห็น / คำตอบคำถามของฉันเมื่อวานนี้ ( ใช้ตัวกรองคาลมานสำหรับตำแหน่ง, ความเร็ว, ความเร่ง ) ฉันได้รับการมองหาสิ่งที่ได้รับการแนะนำและโดยเฉพาะอย่างยิ่งในการที่ทั้งสอง (ก) ตัวอย่างที่วิกิพีเดียในตำแหน่งมิติหนึ่งและความเร็วและยังเว็บไซต์อื่นที่จะพิจารณาสิ่งที่คล้ายกัน อัปเดต 26 เม.ย. 2556 : คำถามเดิมที่นี่มีข้อผิดพลาดบางอย่างเกี่ยวข้องกับความจริงที่ว่าฉันไม่เข้าใจตัวอย่างวิกิพีเดียในตำแหน่งมิติและความเร็วอย่างเดียว ด้วยความเข้าใจที่ดีขึ้นของฉันเกี่ยวกับสิ่งที่เกิดขึ้นตอนนี้ฉันได้ร่างคำถามขึ้นใหม่และมุ่งเน้นไปที่มันแน่นขึ้น ตัวอย่างทั้งสองที่ฉันอ้างถึงในย่อหน้าเบื้องต้นข้างต้นถือว่าเป็นตำแหน่งที่วัดได้เท่านั้น อย่างไรก็ตามไม่มีตัวอย่างใด ๆ ที่มีการคำนวณสำหรับความเร็ว ตัวอย่างเช่นตัวอย่างวิกิพีเดียระบุเมทริกซ์เป็นซึ่งหมายความว่าตำแหน่งเดียวคืออินพุต เพ่งความสนใจไปที่ตัวอย่างของ Wikipedia เวกเตอร์สถานะของตัวกรองคาลมานมีตำแหน่งและความเร็วคือ(xk−xk−1)/dt(xk−xk−1)/dt(x_k-x_{k-1})/dtHH{\bf H}H=[1 0]H=[1 0]{\bf H} = [1\ \ \ 0]xkxk{\bf x}_kxkxkx_kx˙kx˙k\dot{x}_{k} xk=(xkx˙k)xk=(xkx˙k) \begin{align*} \mathbf{x}_{k} & =\left(\begin{array}[c]{c}x_{k}\\ \dot{x}_{k}\end{array} \right) \end{align*} Suppose the measurement of position at …

3
อินพุตของตัวกรองคาลมานควรเป็นสัญญาณและอนุพันธ์ของมันเสมอหรือไม่?
ฉันมักจะเห็นตัวกรองคาลมานที่ใช้กับข้อมูลอินพุตดังกล่าวเสมอ ตัวอย่างเช่นอินพุตมักเป็นตำแหน่งและความเร็วของผู้สื่อข่าว: ( x , dxdเสื้อ)(x,dxdt) (x, \dfrac{dx}{dt}) ในกรณีของฉันฉันมีเพียงตำแหน่ง 2D และมุมในแต่ละตัวอย่างเท่านั้น: Pผม( xผม, yผม)และ( α1, α2, α3)Pi(xi,yi)and(α1,α2,α3) P_i(x_i, y_i) \qquad \text{and} \qquad (\alpha_1, \alpha_2, \alpha_3) ฉันควรคำนวณความเร็วสำหรับแต่ละจุดและแต่ละมุมเพื่อให้พอดีกับกรอบงานของคาลมานหรือไม่?

4
คำอธิบายที่ใช้งานง่ายของการติดตามด้วยตัวกรองคาลมาน
ฉันขอขอบคุณคำอธิบายที่ใช้งานง่ายสำหรับการติดตาม (ภาพ) ด้วยตัวกรองคาลมาน สิ่งที่ฉันรู้: ขั้นตอนการทำนาย: สถานะของระบบแบบไดนามิก : ตำแหน่งเป้าหมาย ณ เวลาxเสื้อxเสื้อ\mathbf x_tเสื้อเสื้อt การวัด : รูปภาพที่ดัชนีเวลา (??)Zเสื้อZเสื้อ\mathbf z_tเสื้อเสื้อt จากภาพ / การวัดฉันต้องการที่จะทำนายสถานะ ? (ใช้สมการแบบไดนามิก) ถูกต้องไหม?1 → ( t - 1 )1→(เสื้อ-1)1\rightarrow(t-1)xเสื้อxเสื้อ\mathbf x_t ฉันจะตีความขั้นตอนการแก้ไขเป็นคำเหล่านั้นได้อย่างไร (รูปภาพสถานที่เป้าหมาย)

2
ตัวกรองคาลมานเหมาะสมกับการกรองตำแหน่งจุดที่คาดการณ์ไว้หรือไม่?
ระบบของฉันมีดังต่อไปนี้ ฉันใช้กล้องของอุปกรณ์มือถือเพื่อติดตามวัตถุ จากการติดตามนี้ฉันได้รับคะแนน 3D สามจุดที่ฉันฉายไว้บนหน้าจอเพื่อรับคะแนน 2D สี่คะแนน ค่า 8 ค่านี้มีเสียงดังเนื่องจากการตรวจจับดังนั้นฉันต้องการกรองค่าเหล่านี้เพื่อให้การเคลื่อนไหวราบรื่นและสมจริงยิ่งขึ้น เป็นการวัดครั้งที่สองฉันใช้การวัดการหมุนวนของอุปกรณ์ซึ่งมีมุมออยเลอร์สามมุม (เช่นทัศนคติของอุปกรณ์) สิ่งเหล่านี้มีความแม่นยำและความถี่สูงกว่า (สูงถึง 100 Hz) กว่าตำแหน่ง 2D (ประมาณ 20 Hz) ความพยายามครั้งแรกของฉันคือการใช้ตัวกรอง low-pass แบบง่าย ๆ แต่ความล่าช้าเป็นสิ่งสำคัญดังนั้นตอนนี้ฉันจึงพยายามใช้ตัวกรอง Kalman โดยหวังว่ามันจะสามารถทำให้ตำแหน่งราบรื่นด้วยความล่าช้าเล็กน้อย ดังที่เห็นในคำถามก่อนหน้าประเด็นสำคัญหนึ่งจุดในตัวกรองคาลมานคือความสัมพันธ์ระหว่างการวัดและตัวแปรสถานะภายใน ที่นี่การวัดมีทั้งพิกัด 8 จุด 2D ของฉันและมุม 3 ออยเลอร์ แต่ฉันไม่แน่ใจเกี่ยวกับสิ่งที่ฉันควรใช้เป็นตัวแปรสถานะภายในและวิธีที่ฉันควรเชื่อมต่อมุมออยเลอร์กับจุด 2D ดังนั้นคำถามหลักตัวกรองคาลมานเหมาะกับปัญหานี้หรือไม่ และถ้าใช่เป็นอย่างไร

1
ตัวกรองคาลมานในทางปฏิบัติ
ฉันได้อ่านคำอธิบายของตัวกรองคาลมานแล้ว แต่ฉันยังไม่ชัดเจนว่ามันมารวมตัวกันอย่างไรในทางปฏิบัติ ดูเหมือนว่าจะมีการกำหนดเป้าหมายหลักที่ระบบเครื่องกลหรือไฟฟ้าเนื่องจากต้องการการเปลี่ยนสถานะเชิงเส้นและไม่เป็นประโยชน์สำหรับการตรวจจับความผิดปกติหรือค้นหาการเปลี่ยนสถานะด้วยเหตุผลเดียวกัน (ต้องการการเปลี่ยนสถานะเชิงเส้น) ใช่ไหม? ในทางปฏิบัติวิธีหนึ่งไม่ได้มักจะพบชิ้นส่วนที่คาดว่าจะเป็นที่รู้จักกันล่วงหน้าเพื่อใช้ตัวกรองคาลมาน ฉันมีรายการส่วนประกอบโปรดแก้ไขให้ถูกต้องหากความเข้าใจของฉันเกี่ยวกับสิ่งที่จำเป็นต้องทราบล่วงหน้านั้นไม่ถูกต้อง ฉันเชื่อว่าสิ่งเหล่านี้ไม่จำเป็นต้องรู้จัก "ล่วงหน้า": เสียงรบกวนกระบวนการww\mathbf w เสียงการสังเกตการณ์vv\mathbf v สถานะที่แท้จริงxx\mathbf x (นี่คือสิ่งที่ตัวกรองคาลมานพยายามประเมิน) ฉันเชื่อว่าสิ่งเหล่านี้จำเป็นต้องรู้ "ล่วงหน้า" เพื่อใช้ตัวกรองคาลมาน: แบบจำลองการเปลี่ยนสถานะเชิงเส้นซึ่งเราใช้กับxx\mathbf x (เราจำเป็นต้องรู้สิ่งนี้ล่วงหน้าดังนั้นรัฐของเราจะต้องอยู่ภายใต้กฎหมายที่รู้จักเช่นตัวกรองคาลมานมีประโยชน์สำหรับการแก้ไขการวัดเมื่อการเปลี่ยนจากรัฐหนึ่งไปอีกรัฐหนึ่งเป็นที่เข้าใจกันดี ขึ้นอยู่กับบิตของเสียง - ไม่ใช่เครื่องมือค้นหาความผิดปกติหรือเครื่องมือในการค้นหาการเปลี่ยนแปลงสถานะแบบสุ่ม) เวกเตอร์ควบคุมuu\mathbf u รูปแบบการป้อนข้อมูลควบคุมซึ่งใช้กับการควบคุมเวกเตอร์ (เราจำเป็นต้องรู้สิ่งนี้ล่วงหน้าเพื่อที่จะใช้ตัวกรองคาลมานเราจำเป็นต้องรู้ล่วงหน้าว่าค่าการควบคุมของเรามีผลต่อรูปแบบอย่างไร ผลจะต้องเป็นเชิงเส้น)uu\mathbf u ความแปรปรวนร่วมของสัญญาณรบกวนกระบวนการ (ซึ่งดูเหมือนว่าจะขึ้นอยู่กับเวลาในบทความ wikipedia นั่นคือขึ้นอยู่กับเวลาk ) - ดูเหมือนว่าเราจำเป็นต้องรู้สิ่งนี้ล่วงหน้าและเมื่อเวลาผ่านไปผมถือว่าในทางปฏิบัติมันเป็นค่าคงที่ ?QQ\mathbf Qkkk แบบสังเกต (เชิงเส้น) HH\mathbf H Covariance (ซึ่งดูเหมือนว่าจะขึ้นอยู่กับเวลาในบทความ wikipedia) - ประเด็นที่คล้ายกันกับQRR\mathbf RQQ\mathbf …

1
จะหาตัวพยากรณ์คาลมานที่อยู่กับที่ได้อย่างไร
ในบทที่เกี่ยวกับตัวกรองคาลมานสถานะหนังสือ DSP ของฉันดูเหมือนจะออกมาจากสีน้ำเงินซึ่งตัวกรองคาลมานที่อยู่นิ่งสำหรับระบบ { x ( t + 1 )Y( t )= A x ( t ) + w ( t )= Cx ( t ) + v ( t ){x(เสื้อ+1)=Ax(เสื้อ)+W(เสื้อ)Y(เสื้อ)=คx(เสื้อ)+โวลต์(เสื้อ)\begin{cases} x(t+1) &= Ax(t) + w(t) \\ y(t) &= Cx(t) + v(t) \end{cases} มีตัวทำนาย x^( t + 1 | t …

1
ตัวกรองคาลมาน - วิธีที่เหมาะสมที่สุดในการจัดการการวัดที่ได้มา?
นั่นคือถ้าคุณมีสถานะตัวแปรเป็นตำแหน่ง ( p ) และความเร็ว ( v ) และฉันทำการวัดความถี่ต่ำของpนี่ก็ให้ข้อมูลเกี่ยวกับvทางอ้อมด้วย(เพราะเป็นอนุพันธ์ของp ) วิธีที่ดีที่สุดในการจัดการความสัมพันธ์คืออะไร? A) ในขั้นตอนการอัพเดตฉันควรจะบอกว่าฉันวัดค่าpแล้วและพึ่งพากระบวนการกรองและเมทริกซ์ความแปรปรวนร่วมของรัฐที่สะสม ( P ) ของฉันเพื่อแก้ไขv ? B) ฉันควรสร้าง "พิเศษ" ขั้นตอนการทำนายทั้งหลังหรือก่อนขั้นตอนการปรับปรุงของฉันสำหรับการตรวจวัดของพีที่ใช้วัดของฉันหน้าและ (ค่อนข้างใหญ่) เดลต้าเวลาที่จะทำให้การคาดการณ์สูงแปรปรวนของวี ? C) ในขั้นตอนอัปเดต / การวัดของฉันฉันควรจะบอกว่าฉันทำการวัดทั้งpและ vแล้วเข้ารหัสข้อมูลเกี่ยวกับการพึ่งพาซึ่งกันและกันของพวกเขาในเมทริกซ์ความแปรปรวนร่วม ( R ) หรือไม่? สำหรับพื้นหลังเพิ่มเติมเล็กน้อยต่อไปนี้เป็นสถานการณ์เฉพาะที่ฉันพบปัญหา: ฉันกำลังทำงานกับระบบที่ฉันต้องการที่จะประเมินตำแหน่ง ( P ) ของวัตถุและฉันทำให้การวัดที่พบบ่อยของการเร่งความเร็ว ( ) และไม่บ่อยนักที่วัดสูงเสียงพี ฉันกำลังทำงานกับ codebase ที่ไม่นี้กับคาลมานกรองขยายที่จะช่วยให้เป็นตัวแปรรัฐพีและวี มันรันขั้นตอน "การคาดคะเน" หลังจากการวัดความเร่งทุกครั้งซึ่งจะใช้aและ delta-time …

3
ควรใช้ EKF และตัวกรองคาลมานเมื่อใด?
ฉันกำลังเรียนรู้ตัวกรองคาลมานเป็นเวลาหนึ่งสัปดาห์แล้ว ฉันเพิ่งค้นพบว่า EKF (ตัวกรองคาลมานขยาย) อาจเหมาะสมกว่าสำหรับกรณีของฉัน ไม่คิดว่าฉันจะใช้ KF / EKF สำหรับการวัดความแปรปรวน (อุปกรณ์ที่บอกเครื่องบินและ parachuters ว่าตำแหน่งแนวตั้งและความเร็วของพวกมันคืออะไร) ในกรณีของฉันฉันได้สร้างข้อมูลตัวอย่าง: สองสามวินาทีแรกที่เขา (ผู้กระโดดร่มสำหรับเช่น) กำลังตกลงมา (ความเร็วเป็นบวก) จากนั้นเขาก็จะเพิ่มขึ้น (ความเร็วเป็นลบ) เท่าที่ฉันสามารถบอกได้ว่าระบบนี้เป็นแบบเชิงเส้น ดังนั้นฉันควรใช้ KF หรือ EKF หรือไม่

7
หนังสือหรืออ้างอิงที่ดีเพื่อเรียนรู้ตัวกรองคาลมาน
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ ฉันใหม่โดยสิ้นเชิงกับตัวกรองคาลมาน ฉันมีหลักสูตรพื้นฐานเกี่ยวกับความน่าจะเป็นแบบมีเงื่อนไขและพีชคณิตเชิงเส้น มีคนแนะนำหนังสือดี ๆ หรือแหล่งข้อมูลใด ๆ บนเว็บที่สามารถช่วยฉันให้เข้าใจการทำงานของตัวกรองคาลมานได้หรือไม่? เว็บไซต์ส่วนใหญ่เริ่มต้นโดยตรงกับสูตรและสิ่งที่พวกเขาหมายถึง แต่ฉันสนใจที่มาของมันหรือถ้าไม่ได้รายละเอียดมาอย่างน้อยความสำคัญทางกายภาพของการดำเนินงานและพารามิเตอร์

2
การวัดตำแหน่งที่กำหนด, วิธีการประมาณความเร็วและการเร่งความเร็ว
นี่เป็นเรื่องง่ายที่ฉันคิด แต่วิธีการไร้เดียงสาของฉันนำไปสู่ผลลัพธ์ที่มีเสียงดังมาก ฉันมีเวลาตัวอย่างและตำแหน่งในไฟล์ชื่อ t_angle.txt: 0.768 -166.099892 0.837 -165.994148 0.898 -165.670052 0.958 -165.138245 1.025 -164.381218 1.084 -163.405838 1.144 -162.232704 1.213 -160.824051 1.268 -159.224854 1.337 -157.383270 1.398 -155.357666 1.458 -153.082809 1.524 -150.589943 1.584 -147.923012 1.644 -144.996872 1.713 -141.904221 1.768 -138.544807 1.837 -135.025749 1.896 -131.233063 1.957 -127.222366 2.024 -123.062325 2.084 -118.618355 2.144 -114.031906 …

1
ตัวกรองคาลมาน - เข้าใจเมทริกซ์ความแปรปรวนร่วมของเสียง
อะไรคือความสำคัญของเมทริกซ์ความแปรปรวนร่วมเสียงในกรอบตัวกรองคาลมาน ฉันหมายถึง: เมทริกซ์ความแปรปรวนร่วมของสัญญาณรบกวนความแปรปรวนQ , และ เสียงการวัดความแปรปรวนเมทริกซ์R ในเวลาใดก็ได้ที ฉันจะตีความเมทริกซ์เหล่านี้ได้อย่างไร พวกเขาเป็นตัวแทนอะไร พวกเขาพูดคุยกันหรือไม่ว่าเสียงของการสังเกตหนึ่งเสียงแตกต่างกันไปตามเสียงของการสังเกตการณ์อื่นในเวกเตอร์สถานะหรือไม่

5
ตัวกรองคาลมาน - การนำไปใช้งานพารามิเตอร์และการปรับแต่ง
ก่อนอื่นนี่เป็นครั้งแรกที่ฉันพยายามสร้างตัวกรองคาลมาน ก่อนหน้านี้ฉันโพสต์คำถาม follwoing กรองสัญญาณรบกวนและความแปรปรวนจากค่าความเร็วใน StackOverflow ซึ่งอธิบายพื้นหลังสำหรับโพสต์นี้ นี่เป็นตัวอย่างของค่าทั่วไปที่ฉันพยายามกรอง พวกเขาไม่จำเป็นต้องลดลงซึ่งเป็นกรณีที่นี่ แต่โดยทั่วไปแล้วอัตราการเปลี่ยนแปลงจะเป็นแบบนี้ X ------- Y 16 --- 233.75 24 --- 234.01 26 --- 234.33 32 --- 234.12 36 --- 233.85 39 --- 233.42 47 --- 233.69 52 --- 233.68 55 --- 233.76 60 --- 232.97 66 --- 233.31 72 --- 233.99 ฉันได้ดำเนินการกรองคาลมานของฉันตามกวดวิชานี้: Kalman …

1
การใช้ตัวกรองคาลมานสำหรับตำแหน่ง, ความเร็ว, ความเร่ง
ฉันเคยใช้ตัวกรองคาลมานสำหรับสิ่งต่าง ๆ ในอดีต แต่ตอนนี้ฉันสนใจที่จะใช้หนึ่งในการติดตามตำแหน่งความเร็วและการเร่งความเร็วในบริบทของตำแหน่งการติดตามสำหรับแอพสมาร์ทโฟน มันทำให้ฉันรู้สึกว่านี่ควรเป็นตัวอย่างของตัวกรองเชิงเส้นคาลมาน แต่ฉันไม่สามารถหาลิงก์ออนไลน์ใด ๆ ที่พูดถึงเรื่องนี้ได้ ฉันสามารถนึกถึงวิธีการต่าง ๆ ในการทำเช่นนี้ แต่แทนที่จะค้นคว้าจากศูนย์บางทีคนที่นี่สามารถชี้ให้ฉันไปในทิศทางที่ถูกต้อง:ไม่มีใครรู้วิธีที่ดีที่สุดในการตั้งค่าระบบนี้หรือไม่? ตัวอย่างเช่นเมื่อพิจารณาประวัติตำแหน่งล่าสุดแล้ววิธีที่ดีที่สุดในการทำนายจุดถัดไปในพื้นที่สถานะตัวกรองคาลมานคืออะไร อะไรคือข้อดีและข้อเสียของการรวมการเร่งความเร็วในพื้นที่รัฐ หากการวัดทั้งหมดอยู่ในตำแหน่งถ้าความเร็วและความเร่งอยู่ในพื้นที่รัฐระบบจะไม่เสถียรหรือไม่? ฯลฯอีกวิธีหนึ่งไม่มีใครรู้ว่ามีการอ้างอิงที่ดีสำหรับการประยุกต์ใช้ตัวกรองคาลมานนี้หรือไม่?ขอบคุณ

2
คุณสมบัติทางสถิติของค่าประมาณคาลมานภายใต้เสียงเกาส์เซียน
สำหรับแบบจำลองพื้นที่รัฐเชิงเส้นที่มีรัฐเสียนอิสระและเสียงออกและการคาดเดาที่สมบูรณ์แบบสำหรับสถานะเริ่มต้นKalman ประมาณว่ามีคุณสมบัติดังต่อไปนี้: ที่ไหนE(x^k|k−xk)=0E(x^k|k−xk)=0 E(\hat{x}_{k|k} - x_k) = 0 Pk|k=Var(x^k|k−xk), or Var(x^k|k), or Var(xk)?Pk|k=Var(x^k|k−xk), or Var(x^k|k), or Var(xk)? P_{k|k} = Var(\hat{x}_{k|k} - x_k),\text{ or }Var(\hat{x}_{k|k}),\text{ or }Var(x_k) ? xkxkx_kเป็นสถานะ ณ เวลาที่ซึ่งเป็นการสุ่มkkk x^k|kx^k|k\hat{x}_{k|k}และเป็นคาลมาน esitmates กล่าวคือเอาท์พุทของตัวกรองคาลมานPk|kPk|kP_{k|k} มีการอ้างอิงถึงสิ่งเหล่านี้หรือไม่? ขอบคุณ!
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.