人體姿態(tài)評估中有兩種常見的顯示方式,分別是火柴人效果與BodyPix效果。其中火柴人效果本質就是基于關鍵點的深度學習模型推理以后的顯示效果;Bodypix本質就就是語義分割模型,基于Deeplabv3+ 與ResNet34構建的一個人體語義分割模型。
火柴人
主要是基于關鍵點的人體姿態(tài)評估顯示方式,基于YOLOv8等人體姿態(tài)評估的關鍵點模型均可以實現,演示代碼運行效果如下:

BodyPix
主要是基于語義分割的人體姿態(tài)評估顯示方式,支持對人體分割為10或者15個標簽,演示代碼運行效果如下:

實現代碼
我把相關的代碼使用PyQT5封裝為一個線程,相關的代碼如下:
classInferenceThread(QtCore.QThread): fire_stats_signal=QtCore.pyqtSignal(dict) def__init__(self,settings): super(InferenceThread,self).__init__() self.settings=settings self.detector=None ifself.settings.model_type==0: self.detector=YOLOv8ORTPose(settings) self.detector.show_skeleton=True ifself.settings.model_type==1: self.detector=YOLOv8ORTPose(settings) self.detector.show_skeleton=True ifself.settings.model_type==2: weight_file_path="D:/projects/body_part_best.onnx" self.detector=BodyPixSegment(weight_file_path) self.input_image=settings.input_image defrun(self): ifself.detectorisNone: return ifself.input_image.endswith(".mp4"): cap=cv.VideoCapture(self.input_image) whileTrue: ret,frame=cap.read() ifretisTrue: dst=self.detector.infer_image(frame) self.fire_stats_signal.emit({"result":frame,"mask":dst}) else: break else: frame=cv.imread(self.input_image) dst=self.detector.infer_image(frame) self.fire_stats_signal.emit({"result":frame,"mask":dst}) self.fire_stats_signal.emit({"done":"done"}) return點擊【開始推理】按鈕的執(zhí)行代碼如下:
defon_yolov8_infer(self): image_file=self.image_file_edit.text() label_file=self.label_file_path.text() model_file=self.weight_file_path.text() iflen(image_file)==0orlen(label_file)==0orlen(model_file)==0: QtWidgets.QMessageBox.warning(self,"警告","參數文件未選擇...") return settings=DLInferSettings() settings.weight_file_path=self.weight_file_path.text() settings.label_map_file_path=self.label_file_path.text() settings.score_threshold=self.conf_spinbox.value() settings.input_image=image_file settings.model_type=0 ifself.rbtn0.isChecked(): settings.model_type=0 ifself.rbtn1.isChecked(): settings.model_type=1 ifself.rbtn2.isChecked(): settings.model_type=2 settings.target_deploy=1 self.work_thread=InferenceThread(settings) self.work_thread.fire_stats_signal.connect(self.on_update_result_image) self.work_thread.finished.connect(self.work_thread.deleteLater) self.work_thread.start() self.startBtn.setStyleSheet("background-color:gray;color:white") self.startBtn.setEnabled(False) self.stopBtn.setStyleSheet("background-color:cyan;color:black") self.stopBtn.setEnabled(True)
運行結果如下:


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
代碼
+關注
關注
30文章
4965瀏覽量
73844 -
深度學習
+關注
關注
73文章
5597瀏覽量
124330
原文標題:兩種常見的人體姿態(tài)評估顯示方式
文章出處:【微信號:CVSCHOOL,微信公眾號:OpenCV學堂】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
熱點推薦
PCBA清洗全攻略:手工VS自動,兩種方式的區(qū)別!
23年PCBA一站式行業(yè)經驗PCBA加工廠家今天為大家講講PCBA加工如何洗板?PCBA加工洗板的方法。PCBA洗板方法多樣,可根據生產規(guī)模、產品特性及質量要求,從手工清洗與自動清洗兩大方向中選
兩種常見的除法器工作原理
二進制除法器的本質是多次減法,直到余數小于除數為止。對應的兩個N bit二進制數的除法算法如下。
1、設置2N bit寄存器A的低N位存放被除數,設置2N bit寄存器B的高N位存放除數,設置N
發(fā)表于 10-21 13:28
ANSA人體模型姿態(tài)調整工具的使用案例
中國體征人體數字模型(AC-HUMs)是中國汽研主持研發(fā)的人體有限元模型。BETA CAE Systems與中國汽研保持緊密合作,前、后處理軟件(ANSA/META)會全面支持AC-HUMs系列模型。在軟件中提供對應工具用于人體
ANSA人體模型姿態(tài)調整工具介紹
ANSA的人體模型姿態(tài)調整工具(HBM Articulation Tool)通過網格變形技術實現基于人體不同部位進行調節(jié),定位人體模型最終的姿態(tài)
兩種散熱路徑的工藝與應用解析
背景:兩種常見的散熱設計思路 在大電流或高功率器件應用中,散熱和載流能力是PCB設計中必須解決的難題。常見的兩種思路分別是: 厚銅板方案:通過整體增加銅箔厚度(如3oz、6oz甚至更高
正確的連接電機傳動軸的幾種常見連接方式及其優(yōu)缺點
在工業(yè)機械和自動化設備中,電機與傳動軸的連接方式直接影響設備的運行效率、穩(wěn)定性和使用壽命。選擇合適的連接方式需要綜合考慮負載特性、安裝精度、維護便利性以及成本等因素。以下是幾種常見的電機傳動軸連接
科普 | 5G公網對講有幾種實現方式?
對講機的通信方式,通過PTT按鍵,實現一鍵對講的通信方式,應用在一些關鍵業(yè)務通信,應急通信,行業(yè)工作環(huán)境下的通信需求。要實現5G公網對講現在有兩種方式,一
振弦式應變計兩種數據傳輸方式介紹
著數據采集的效率與可靠性。下面給大家介紹振弦式應變計兩種數據傳輸方式。一、有線傳輸:穩(wěn)定可靠的傳統(tǒng)方案有線傳輸是振弦式應變計最傳統(tǒng)的數據傳輸方式,通過專用電纜將傳感器與采集終
兩種驅動方式下永磁直線開關磁鏈電機的研究
摘要:永磁開關磁鏈電機數學模型可以等效為永磁無刷電機,普遍采用方波驅動方式。在有限元基礎上分析6/7極直線式磁鏈電機反電勢波形,采用方波和正弦波驅動方式,比較兩種方式下的電流、電壓、平
發(fā)表于 06-09 16:18
滲壓計如何實現精準測量?兩種主流方式與應用場景解析
滲壓計是監(jiān)測巖土工程、大壩滲流壓力變化的核心設備,其測量精度和效率直接影響工程安全評估的可靠性。目前主流的測量方式分為現場手動測量與自動化監(jiān)測兩類,分別適用于不同的工程場景。一、現場測量:智能讀數儀
正激變換器的兩種復位方式
)是RCD復位正激變換器的主要工作波形。電容C兩端電壓在一個開關周期內近似為直流電壓,則RCD復位電壓是一個方波。同樣在開關管關斷瞬間,變壓器上有一個電壓尖峰,是由變壓器漏感與開關管結電容諧振引起的。
常見網絡負載均衡的幾種方式
常見網絡負載均衡的幾種方式包括:DNS負載均衡、反向代理負載均衡、IP負載均衡、應用層負載均衡、鏈路層負載均衡。以下是小編對幾種常見的網絡負載均衡方式及其詳細展開介紹。
常見人體姿態(tài)評估顯示方式的兩種方式
評論