ฉันจะทำให้ข้อมูลเซ็นเซอร์ accelerometer เป็นปกติได้อย่างไร


9

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

สิ่งที่ฉันรู้ก็คือพวกมันเป็นเครื่องเร่งความเร็วสามแกนที่มีอัตราการสุ่มตัวอย่าง 20Hz; MEMS แบบดิจิทัลและน่าจะเป็น ฉันสนใจพฤติกรรมอวัจนภาษาและการแสดงท่าทางซึ่งแหล่งอ้างอิงของฉันส่วนใหญ่ควรสร้างกิจกรรมในช่วง 0.3-3.5Hz

การทำให้ข้อมูลเป็นปกติน่าจะค่อนข้างจำเป็น แต่ฉันไม่แน่ใจว่าจะใช้อะไร ส่วนใหญ่ของข้อมูลอยู่ใกล้กับค่าที่เหลือ (ค่าดิบของ ~ 1000 จากแรงโน้มถ่วง) แต่มีสุดขั้วบางอย่างเช่นสูงถึง 8000 ในบันทึกบางส่วนหรือแม้กระทั่ง 29000 ในอื่น ๆ ดูภาพด้านล่าง ฉันคิดว่านี่เป็นความคิดที่ไม่ดีที่จะหารด้วยค่าสูงสุดหรือค่ามาตรฐานเพื่อทำให้เป็นมาตรฐาน

อะไรคือวิธีการปกติในกรณีเช่นนี้? หารด้วยค่ามัธยฐาน? ค่าเปอร์เซ็นต์ไทล์ อื่น ๆ อีก?

ในฐานะที่เป็นปัญหาด้านข้างฉันไม่แน่ใจเช่นกันว่าฉันควรจะตัดค่าที่มากที่สุดออกมา ..

ขอบคุณสำหรับคำแนะนำใด ๆ !

แก้ไข : นี่คือพล็อตของข้อมูลประมาณ 16 นาที (ตัวอย่าง 20,000) เพื่อให้คุณมีความคิดในการกระจายข้อมูล

ป้อนคำอธิบายรูปภาพที่นี่


1
คุณสามารถให้ข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าการวัดของคุณได้หรือไม่? คำถามที่นึกถึง: ( 1 ) เครื่องเร่งความเร็วแบบแกนเดียวหรือหลายแกนหรือไม่ ( 2 ) พวกเขากรองสูงผ่านหรือไม่และถ้าเป็นเช่นนั้นได้อย่างไร (ดูเหมือนว่าพวกเขาจะไม่ขึ้นอยู่กับคำอธิบายของคุณ) ( 3 ) คุณวัดอะไรและช่วงความถี่ของสัญญาณที่น่าสนใจคืออะไร? ( 4 ) กลไกตรวจจับคืออะไร (เช่น MEMS, piezoelectric, capacitive ฯลฯ ) หรือแม้กระทั่งหมายเลขชิ้นส่วน (!) ของเครื่องวัดความเร่งที่คุณใช้? ...
พระคาร์ดินัล

... (ต่อ) ( 5 ) สิ่งเหล่านี้เป็นดิจิตอลเต็มรูปแบบหรือคุณมี ADC ของคุณเอง (16 บิตหรืออาจเป็นไปตามคำอธิบายที่คุณให้)
พระคาร์ดินัล

@ cardinal: ฉันแก้ไขคำตอบของคำถามของคุณแล้วขอบคุณที่ถาม ไม่แน่ใจว่า ADC คืออะไร ฉันมีส่วนร่วมในการทดสอบ แต่ไม่ใช่ในการดึงข้อมูลจากหน่วยความจำอุปกรณ์มีช่องว่างระหว่างการรวบรวมข้อมูลและที่ฉันได้รับไบนารีบันทึกจำนวนมาก
Junuxx

สวัสดี Junuxx ขออภัยคำย่อไม่ได้อธิบาย (ADC = "ตัวแปลงอนาล็อกเป็นดิจิตอล"); ฉันคิดว่าคุณจะรับรู้โดยปริยายตามคำถามของคุณ
พระคาร์ดินัล

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

คำตอบ:


14

สัญญาณดิบที่คุณแสดงด้านบนดูเหมือนจะไม่มีการกรองและไม่มีการปรับเทียบ การกรองและการสอบเทียบที่เหมาะสมโดยการปฏิเสธสิ่งประดิษฐ์บางอย่างจะส่งผลต่อข้อมูลปกติ วิธีการมาตรฐานพร้อมข้อมูล accelerometer มีดังต่อไปนี้:

  1. ตัวกรอง - ลำดับที่ 4, low-pass IIR zero-filter หรือตัวกรอง bandpass
  2. การปฏิเสธสิ่งประดิษฐ์ - ตามเกณฑ์
  3. การปรับเทียบ - วิธี Ferraris และคณะ ( วิธีการสำหรับการปรับเทียบไจโรสโคปและเครื่องเร่งความเร็วแบบสามแกนได้อย่างง่ายดาย, F Ferraris, U Grimaldi, M Parvis - เซ็นเซอร์และแอคทูเอเตอร์, 1995 ) ทำงานได้ดีในเรื่องนี้

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

ด้วยขนาดของค่าผิดปกติที่คุณรายงานว่ามีแนวโน้มว่าจะเป็นสิ่งประดิษฐ์ สิ่งประดิษฐ์ดังกล่าวเกือบจะแน่ใจว่าการคำนวณการสอบเทียบใด ๆ (แม้ว่าผลของพวกเขาจะลดลงโดยการกรองที่เหมาะสม) ดังนั้นควรทำการสอบเทียบหลังจากการปฏิเสธสิ่งประดิษฐ์

เกณฑ์ง่ายอาจทำงานได้ดีสำหรับรูทีนการปฏิเสธสิ่งประดิษฐ์เริ่มต้นเช่นลบ (หรือแทนที่ด้วยNaN) ตัวอย่างทั้งหมดที่อยู่เหนือขีด จำกัด เชิงประจักษ์ที่แน่นอน เทคนิคที่ซับซ้อนกว่านี้จะคำนวณขีด จำกัด นี้โดยใช้ค่าเฉลี่ยหรือหน้าต่างย้าย

ขึ้นอยู่กับตำแหน่งของเซ็นเซอร์ที่คุณอาจต้องการแก้ไขสำหรับอิทธิพลของแรงโน้มถ่วงที่มีต่อสัญญาณความเร่งแม้ว่าความเข้าใจในรายละเอียดเกี่ยวกับแกนเซ็นเซอร์และการวางตำแหน่งเป็นสิ่งสำคัญที่นี่ วิธีการ Moe-Nillson ( R. Moe-Nilssen วิธีใหม่สำหรับการประเมินการควบคุมมอเตอร์ในการเดินภายใต้สภาพแวดล้อมในชีวิตจริงส่วนที่ 1: เครื่องมือ, ชีวกลศาสตร์คลินิก, เล่มที่ 13, ฉบับที่ 4-5, มิถุนายน - กรกฎาคม 1998, หน้า 320-327 ) เป็นเครื่องมือที่ใช้กันมากที่สุดและใช้งานได้ดีกับเซ็นเซอร์แรงเฉื่อยหลังล่างที่ติดตั้งอยู่

จุดเริ่มต้นที่ดีในการตรวจสอบข้อมูลสำหรับการจดจำท่าทางจะแบ่งข้อมูลที่กรองแล้วปรับให้เป็นยุค (เช่น 10 วินาที) และคำนวณจำนวนคุณลักษณะต่อยุคและเชื่อมโยงสิ่งเหล่านี้กับฉลากที่คุณมีสำหรับข้อมูลฉันสามารถ ' ไม่ให้คำแนะนำเฉพาะเพิ่มเติมโดยไม่ทราบข้อมูลเพิ่มเติมเกี่ยวกับชุดข้อมูลและป้ายกำกับที่เกี่ยวข้อง

หวังว่านี่จะช่วยได้


นั่นเป็นคำตอบที่น่าอัศจรรย์ @BGreene ขอบคุณมาก! การอ้างอิงมีประโยชน์มากเช่นกัน ฉันหวังว่าฉันได้ถามคำถามนี้เมื่อไม่กี่เดือนที่ผ่านมา เซ็นเซอร์ถูกสวมใส่ที่สายรอบคอ (ไม่ใช่ความคิดของฉัน) ดังนั้นจึงมีการเคลื่อนไหวมากมายเมื่อเทียบกับร่างกาย คำแนะนำของคุณบางอย่างอาจเหมาะสมกว่าสำหรับการวิจัยเพิ่มเติมที่ฉันคิดว่า แต่อย่างน้อยพวกเขาก็จะมีประโยชน์สำหรับการทำงานในอนาคต และโชคดีที่ส่วนการรับรู้ไม่ใช่ปัญหาฉันมีพื้นหลังค่อนข้างแข็งในการเรียนรู้ของเครื่อง แต่ขอบคุณสำหรับคำแนะนำในเรื่องนั้น
Junuxx

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

(+1 เมื่อวาน) อาจมีการพิจารณาบางสิ่งใน (1) ด้านบน เนื่องจากขอบเขตล่างของช่วงความถี่ที่น่าสนใจมีขนาดค่อนข้างเล็กทางเลือกหนึ่งที่ควรพิจารณาคือใช้ตัวกรอง low-pass และลบค่าเฉลี่ย ประการที่สองแทนที่จะเป็นตัวกรอง IIR เราอาจพิจารณาตัวกรองแบบ linear-phase finite-impulse-response ในกรณีนี้ ฉันพูดแบบนี้เพราะฉันสงสัยว่าจะทำนายท่าทางด้วยการใช้สัญญาณ accelerometer แบบหลายแกนใครจะต้องการให้การซิงโครไนซ์เคลื่อนไหวเป็นอิสระจากความถี่ (ต่อ)
พระคาร์ดินัล

(... ) การตอบสนองเฟสแบบไม่เชิงเส้นของตัวกรอง IIR จะเปลี่ยนองค์ประกอบที่แตกต่างกันตามจำนวนที่แตกต่างกันและผลกระทบนี้มีแนวโน้มที่จะแย่ลงใกล้กับความถี่ตัดออก เนื่องจากทุกอย่างเป็นแบบดิจิทัลจึงเหมาะสมที่จะใช้ตัวกรอง FIR เชิงเส้นเฟส บ่อยครั้งที่หนึ่งยังควบคุมการตอบสนองชั่วคราวได้ดีขึ้นเช่นกัน :-)
พระคาร์ดินัล

@ cardinal นั้นเป็นจริงทั้งหมด - ได้แก้ไขคำตอบของฉันด้านบนแล้ว เพิ่งตรวจสอบรหัสของฉัน - อัลกอริทึม accelerometer ล่าสุดของฉันใช้ตัวกรอง Butterworth IIR แบบ zero-phase แม้ว่าฉันต้องการหลีกเลี่ยงการลบค่าเฉลี่ยสำหรับเซ็กเมนต์ข้อมูลสั้น ๆ
BGreene
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.