劉少華, 徐 超, 許金林, 許勝強(qiáng), 元沐南
1(安徽大學(xué) 計(jì)算智能與信號處理教育部重點(diǎn)實(shí)驗(yàn)室, 合肥 230601)
2(安徽大學(xué) 安徽省農(nóng)業(yè)生態(tài)大數(shù)據(jù)工程實(shí)驗(yàn)室, 合肥 230601)
3(中國科學(xué)院 合肥物質(zhì)科學(xué)研究院, 合肥 230031)
隨著社會的發(fā)展、生活節(jié)奏的加快, 青少年的讀寫時長也在增長, 坐立狀態(tài)逐漸成為青少年大多數(shù)時間所處的狀態(tài)之一[1]. 利用人體解剖學(xué)的生理知識可知, 當(dāng)人體處于不同坐姿時, 腿部、臀部、背部、脊椎等部位所承受的壓力均大不相同[2]. 如圖1所示, 人體脊椎分為4個主要部分: 頸椎, 胸椎, 腰椎和骶, 直立時整個脊柱呈現(xiàn)S型, 稱為脊柱的正常生理彎曲[3]. 當(dāng)人體以正常坐姿入座時, 脊椎壓力分布均勻, 骨骼以及肌肉所承受的負(fù)擔(dān)減小, 身體舒適, 可提高青少年的學(xué)習(xí)效率[4,5]; 而人體長時間處于不良坐姿時, 脊椎及其他部位的壓力分布極其不均勻. 根據(jù)研究表明, 坐姿不良所將產(chǎn)生的人體受力不均衡直接導(dǎo)致駝背、頸椎病、腰椎病、肌肉損傷等身體健康疾病[6], 對青少年的身體發(fā)育非常不利且難以矯正, 嚴(yán)重?fù)p害青少年的身體健康.
圖1 人體直立時脊椎解刨結(jié)構(gòu)圖
目前國內(nèi)外主流的坐姿矯正器基本上分為: 穿戴式坐姿矯正器、機(jī)械平衡式坐姿矯正器、支架式坐姿矯正器、電子平衡式坐姿矯正器和測距式坐姿矯正器,如背背佳的U9坐姿矯正器、益視寶支架式坐姿矯正器、貓?zhí)与娮与娮悠胶馐阶顺C正器等. 然而, 這些傳統(tǒng)的坐姿矯正器存在著比較笨重、占用空間大、安裝復(fù)雜、缺少數(shù)據(jù)分析和監(jiān)控等缺點(diǎn), 同時對使用者存在一定的干擾, 容易分散使用者的注意力[7]. 由于坐姿情況和座椅接觸面壓力場分布有著密切的聯(lián)系, 因此, 研究青少年坐姿時的壓力分布, 對坐姿狀態(tài)進(jìn)行實(shí)時的分析和反饋提醒, 可以幫助青少年預(yù)防由于坐姿不當(dāng)而產(chǎn)生的各種疾病、指導(dǎo)青少年坐姿矯正還是很有意義的. 針對于以上缺點(diǎn), 本文基于柔性力敏傳感器,設(shè)計(jì)了一套新型的便攜式讀寫坐姿實(shí)時監(jiān)測及智能提醒系統(tǒng). 該系統(tǒng)通過在座椅上的鋪設(shè)點(diǎn)陣式柔性力敏墊, 以及安裝在寫字板上的光敏傳感器與溫濕度傳器,可以應(yīng)用在任何環(huán)境下, 安裝簡易、拆卸靈活、占用空間小、無干擾, 具有較好的便攜性, 但是還存在著能夠識別的不良坐姿種類較少、存在一定的誤差等問題.
此青少年讀寫坐姿監(jiān)測系統(tǒng), 能夠?qū)崟r監(jiān)測和分析青少年讀寫過程中坐姿情況和環(huán)境變化, 系統(tǒng)總體結(jié)構(gòu)主要由坐姿采集模塊、通信處理模塊、APP客戶端三大部分組成. 坐姿采集模塊包括數(shù)據(jù)采集電路、柔性力敏傳感器、光強(qiáng)傳感器、溫度傳感器、濕度傳感器, 實(shí)時采集青少年讀寫過程中的坐姿壓力分布數(shù)據(jù)、環(huán)境光強(qiáng)、溫度、濕度信息并將相關(guān)數(shù)據(jù)傳入通信處理模塊; 通信處理模塊對傳入的數(shù)據(jù)進(jìn)行分析處理, 通過以太網(wǎng)發(fā)送給手機(jī)APP端; APP接收到通信處理模塊發(fā)送的分析結(jié)果, 實(shí)時顯示青少年當(dāng)前的坐姿情況和環(huán)境參數(shù), 并且完成數(shù)據(jù)的存儲, 達(dá)到實(shí)時預(yù)警的效果.系統(tǒng)總體示意圖如圖2所示.
圖2 系統(tǒng)總體示意圖
實(shí)時采集用戶的坐姿信息與環(huán)境參數(shù), 利用無線通訊模塊, 將坐姿信息與環(huán)境參數(shù)傳遞至手機(jī)APP客戶端, 通過坐姿動作識別與分析算法對坐姿狀態(tài)進(jìn)行分類, 將處理結(jié)果以圖表的形式顯示在客戶端, 實(shí)時提醒用戶達(dá)到反饋預(yù)警的效果, 系統(tǒng)結(jié)構(gòu)框圖如圖3所示.
系統(tǒng)硬件結(jié)構(gòu)如圖4所示, 主要包括鋪設(shè)于座椅上的點(diǎn)陣式壓力墊、安裝于寫字板上的光敏傳感器與溫濕度傳感器以及網(wǎng)絡(luò)通訊模塊.鋪設(shè)于座椅上的點(diǎn)陣式柔性壓力墊用于實(shí)時采集坐墊的壓力分布信息; 安裝在寫字板上光敏傳感器與溫濕度傳感器用于實(shí)時監(jiān)測當(dāng)前的環(huán)境參數(shù); 通信處理模塊實(shí)時接收采集到的壓力分布信息與環(huán)境參數(shù), 并且對數(shù)據(jù)進(jìn)行分析處理,將分析結(jié)果傳遞給手機(jī)APP客戶端.
圖3 系統(tǒng)結(jié)構(gòu)框架
圖4 系統(tǒng)硬件結(jié)構(gòu)示意圖
(1) 柔性力敏傳感器
本文采用柔性力敏傳感器, 由兩片超薄耐高溫聚酯薄膜組成. 采用上下層結(jié)構(gòu), 基于壓阻敏感機(jī)理和隧道效應(yīng)理論, 在上下層接觸表面形成接觸電阻. 在沒有壓力時, 其具有穩(wěn)定的初始接觸電阻; 在有壓力時, 其接觸電阻隨壓力的增加而線性減小, 通過檢測其接觸電阻的變化值可以計(jì)算出其相對應(yīng)敏感單元或區(qū)域的壓力值[8]. 上層薄膜內(nèi)鋪設(shè)40行的帶狀導(dǎo)體, 下層薄膜內(nèi)鋪設(shè)40列的帶狀導(dǎo)體, 則形成了40×40的壓力傳感器陣列, 一共具有1600個有效傳感器節(jié)點(diǎn). 圖5為柔性力敏傳感器圖集, 其中a(1)為行引線, a(2)為列引線,a(3)為敏感單元. 由于此傳感器厚度非常薄, 柔性較好易于彎曲, 因此它可以隨身攜帶, 用于日常生活中的各種場合, 具有很好的便攜性. 在本文的試驗(yàn)中, 為了增加青少年坐立時的舒適度, 在將柔性力敏傳感器的上面放置了一塊厚底8 mm的坐墊, 并且鑲嵌在座椅表面.
所采用的柔性力敏傳感器, 由中科院合肥智能機(jī)械研究所自主研制, 具有完全自主知識產(chǎn)權(quán), 每塊壓力墊的大小為40 cm×40 cm, 由均勻分布的40×40個壓阻傳感器構(gòu)成, 傳感器密度1個/cm2, 采樣頻率100 Hz.
圖5 柔性力敏傳感器圖集
(2)采集電路設(shè)計(jì)
以STM32103單片機(jī)作為核心控制器, 采用二次測量法對傳感器進(jìn)行掃描[8]. 利用放大器輸入端等電位的原理, 在同一時間下, 允許一行和一列分別被選中與ADC電路連接, 通過地址的循環(huán)依次得到每個節(jié)點(diǎn)的實(shí)時電壓值, 然后根據(jù)壓力與電壓的變化模型, 計(jì)算獲得各個壓力節(jié)點(diǎn)的壓力值.采集電路結(jié)構(gòu)框圖和實(shí)物圖如圖6所示.
(3)設(shè)備驅(qū)動
驅(qū)動主要分為采集、控制和通訊三個主要部分.采集驅(qū)動部分, 通過MCU片上ADC模塊將模擬電路調(diào)理后的壓力信息、環(huán)境信息(溫度、濕度、光強(qiáng))轉(zhuǎn)換為數(shù)字信號供后期處理; 控制驅(qū)動部分, 通過ADC模塊將壓力參數(shù)、環(huán)境參數(shù)傳輸至MCU,MCU根據(jù)提出的算法對這些數(shù)據(jù)進(jìn)行實(shí)時處理分析;通訊驅(qū)動部分, 坐墊和寫字板通過WiFi將MCU的分析結(jié)果傳遞給手機(jī)App客戶端, 實(shí)時顯示給用戶, 實(shí)現(xiàn)交互體驗(yàn).
圖6 采集電路原理圖和實(shí)物圖
客戶端軟件是基于Android操作系統(tǒng)、采用MVC設(shè)計(jì)模式實(shí)現(xiàn).相對于其他智能手機(jī)操作系統(tǒng)而言, 它的優(yōu)勢體現(xiàn)在它的開放性: 開放的系統(tǒng)源碼, 主要應(yīng)用于移動終端設(shè)備, 例如智能手機(jī)、平板電腦、電視、游戲機(jī)等, 是目前市場占有率第一的移動終端操作系統(tǒng)[9].
通過坐姿監(jiān)測客戶端軟件, 用戶能夠隨時隨地的監(jiān)測讀寫過程中坐姿情況和環(huán)境參數(shù)的變化情況, 達(dá)到實(shí)時預(yù)警的效果. 同時以報表的形式直觀統(tǒng)計(jì)監(jiān)測時長、不良坐姿次數(shù)的餅狀圖、環(huán)境參數(shù)的折線圖以及微動作的詳情, 方便家長分析和糾正青少年坐姿. 具有用戶注冊登錄模塊、系統(tǒng)參數(shù)調(diào)節(jié)模塊、坐姿監(jiān)測模塊、報表信息模塊、微動作詳情模塊, 客戶端軟件結(jié)構(gòu)圖如圖7所示.
在初始界面完成初始設(shè)置, 即可開始監(jiān)測, 以圖表的形式對坐姿監(jiān)測情況進(jìn)行實(shí)時顯示. 當(dāng)停止監(jiān)測后,則顯示在監(jiān)測期間的相關(guān)報表信息, 包括監(jiān)測時長統(tǒng)計(jì)、不良坐姿統(tǒng)計(jì)、溫度統(tǒng)計(jì)、濕度統(tǒng)計(jì)等信息. 在此頁面, 可以進(jìn)入微動作詳情頁面. 坐姿監(jiān)測頁面如圖8(a)所示; 報表信息頁面如圖8(b); 微動作詳情頁面如圖8(c).
圖7 客戶端軟件結(jié)構(gòu)圖
圖8 圖片合集
大面積、高密度的柔性力敏傳感器主要用于測量接觸界面的壓力分布信息, 其通過其信號檢出電路獲得輸出的電壓信號, 根據(jù)其典型輸入輸出關(guān)系圖可知,輸出電壓和壓力分區(qū)間成線性關(guān)系, 通過直線擬合得到輸入-輸出關(guān)系, 因此, 通過輸出電壓即可以解算出壓力值. 開展逐點(diǎn)標(biāo)定實(shí)驗(yàn), 實(shí)驗(yàn)方法: 首先按照量程分為10個標(biāo)定點(diǎn); 由小到大依次加載, 記錄每次的輸出電壓; 由大到小依次卸載, 記錄每次的輸出電壓值.
按照上述實(shí)驗(yàn)方法重復(fù)30次, 對30次記錄的數(shù)據(jù)進(jìn)行均值處理后, 得到傳感器的壓力-電壓變化曲線如圖9, 通過直線擬合擬合得到輸入-輸出關(guān)系, 實(shí)驗(yàn)誤差±0.25%.
(1)原始數(shù)據(jù)
圖9 壓力-電壓變化曲線
將坐墊上壓力分布的原始數(shù)據(jù)經(jīng)過預(yù)處理后用MFC畫出來如圖10所示, 該圖形象的描繪出了臀部的壓力分布情況, 可以清晰的觀察出壓力的變化情況.
圖10 臀部壓力分布圖
(2)數(shù)據(jù)預(yù)處理
在數(shù)據(jù)采集的過程中, 由于震動和電磁干擾等原因可能會產(chǎn)生一些雜點(diǎn)數(shù)據(jù), 因此需要對原始數(shù)據(jù)進(jìn)行預(yù)處理, 消除圖像中混入的噪聲.
均值濾波是一種線性濾波算法, 它是指在圖像上對目標(biāo)像素給一個模板(本文選取的模板尺寸為3×3,即以目標(biāo)像素為中心的周圍8個像素, 構(gòu)成一個濾波模板), 該模板包括了其周圍的臨近像素, 再用模板中的全體像素的平均值來代替原來像素值.
每個人坐在板凳上會使鋪設(shè)于坐墊上的柔性力敏傳感器產(chǎn)生形變, 產(chǎn)生M行×N列的二維壓力矩陣. 正常坐姿時, 身體處于端正狀態(tài), 壓力矩陣具有左右對稱性, 且接觸壓力值處于穩(wěn)定狀態(tài). 當(dāng)人出現(xiàn)前后傾、左右傾、翹腿等不良坐姿時, 壓力矩陣不具有對稱性. 此外, 當(dāng)人出現(xiàn)抖腿等不良坐姿時, 接觸壓力值處于上下波動狀態(tài), 幀與幀之間的接觸壓力變化差值較大. 系統(tǒng)首先實(shí)時對坐姿的判斷結(jié)果進(jìn)行統(tǒng)計(jì), 分別記錄正確坐姿、不良坐姿以及離座三種情況的次數(shù), 識別并統(tǒng)計(jì)導(dǎo)致不良坐姿的微動作, 在此基礎(chǔ)上, 通過大量數(shù)據(jù)將坐姿微動作信息與其心理變化以及環(huán)境因素等進(jìn)行關(guān)聯(lián)分析, 并建立坐姿微動作與用戶的行為習(xí)慣、心理特征以及環(huán)境因素之間的綜合模型.
算法首先進(jìn)行是否離座判別, 計(jì)算總壓力值p, 若p沒有超過閾值t1, 即p<t1則判斷為離座, 否則進(jìn)行對稱性判別; 對稱性判別是尋找壓力矩陣對稱的中心線,通過中心線劃分出左右兩個區(qū)域, 統(tǒng)計(jì)左邊區(qū)域的壓力總值p1和右邊區(qū)域的壓力總值p2, 計(jì)算出對稱系數(shù)w1=p1/p2, 當(dāng)w1沒有超過閾值t2, 即w1<t2則判定為正常坐姿, 否則進(jìn)行波動性判別; 波動性判別是統(tǒng)計(jì)前幀壓力值p3和后幀壓力值p4, 計(jì)算波動系數(shù)w2=p3/p4,當(dāng)w2超過閾值t3時, 即w2>t3時則判斷為抖腿. 否則,將此不良坐姿和已有的樣本庫通過K-means聚類, 識別出此不良坐姿的具體類別, 進(jìn)一步識別出前傾、后傾、左傾、右傾、翹腿[11]. 由于本文的數(shù)據(jù)樣本中只有一部分是有標(biāo)簽的, 很大一部分沒有標(biāo)簽, 考慮到數(shù)據(jù)增強(qiáng)有利于優(yōu)化分類模型, 將更多的數(shù)據(jù)應(yīng)用到模型中, 所以本文利用K-means算法在已有標(biāo)簽數(shù)據(jù)下對未有標(biāo)簽數(shù)據(jù)進(jìn)行聚類, 聚類完成后將此不良坐姿的樣本添加并且更新樣本庫, 這樣增加了帶有數(shù)據(jù)標(biāo)簽的樣本.
K-means主要算法流程如下[12]:
1) 為每個聚類確定一個初始聚類中心.由于樣本庫中有5類不良坐姿, 所以有5個初始聚類中心.
2) 將未知標(biāo)簽的樣本按照最小距離原則分配到最近鄰聚類.
3) 使用每個聚類中的樣本均值作為新的聚類中心.
4) 重復(fù)2)、3)知道聚類中心不再變化.
5) 結(jié)束, 得到5個聚類.
本文使用的K-means算法具體描述如下:
2) 重復(fù)下面的過程直到收斂.
{對于每一個樣例i, 計(jì)算其應(yīng)該屬于的類:
算法流程如圖11所示.
本文中, 我們將讀寫過程中常見的坐姿分為正常坐姿、前傾、后傾、左傾、右傾、抖腿、翹腿、離座八種, 如表1所示.
我們選取了20名青少年參加測試, 年齡在15–20歲之間, 體重在40–80 kg之間. 測試人員首先按照指引保持正常坐姿作為標(biāo)定標(biāo)準(zhǔn), 也就是脊柱端直略前傾, 稍低頭, 不能歪、扭軀干和頭頸部(嚴(yán)格要求做到“三個一”, 即胸距桌緣一拳約7–10 cm, 眼距書一尺約33 cm, 握筆手指距筆尖一寸約3 cm[13]. 然后, 測試人員依次按照前傾→后傾→左傾→…→翹腿的順序依次更換坐姿, 每種坐姿保持4秒, 每個測試對象重復(fù)采集10次測試流程. 采集完20個測試對象后, 其中,所有測試者的8次試驗(yàn)數(shù)據(jù)作為訓(xùn)練樣本, 2次試驗(yàn)數(shù)據(jù)作為測試樣本, 各個坐姿識別率如圖12所示[14].
圖11 坐姿微動作識別與分析算法流程
表1 八種坐姿
本文設(shè)計(jì)了一款便攜式、操作簡單、檢測準(zhǔn)確度高的坐姿實(shí)時監(jiān)測及智能提醒系統(tǒng), 通過柔性力敏傳感器采集坐姿臀部壓力分布, 能夠檢測出正常坐姿、前傾、后傾、左傾、右傾、抖腿、翹腿、離座8種坐姿情況, 平均識別準(zhǔn)確率達(dá)到98%. 同時采用手機(jī)APP客戶端實(shí)時顯示坐姿情況和環(huán)境參數(shù), 并且完成數(shù)據(jù)的存儲, 提醒用戶及時糾正坐姿, 達(dá)到實(shí)時預(yù)警的效果. 在接下的研究工作中, 我們將結(jié)合微動作心理學(xué),重點(diǎn)研究并分析青少年讀寫過程中坐姿微動作與心理變化的關(guān)系, 進(jìn)一步提高坐姿干預(yù)矯正效果[15].
圖12 坐姿識別率