| import av |
| import os |
| import sys |
| import streamlit as st |
| from streamlit_webrtc import VideoHTMLAttributes, webrtc_streamer |
| from aiortc.contrib.media import MediaRecorder |
| from streamlit_lottie import st_lottie |
| import json |
| import requests |
| import pandas as pd |
|
|
|
|
| BASE_DIR = os.path.abspath(os.path.join(__file__, '../../')) |
| sys.path.append(BASE_DIR) |
|
|
| |
| |
| |
|
|
|
|
|
|
|
|
| def get(path: str): |
| with open(path, "r") as p: |
| return json.load(p) |
|
|
|
|
| |
| |
|
|
| joints = ["left_shoulder", "right_shoulder", "left_hip", |
| "right_hip", "left_knee", "right_knee", |
| "left_elbow", "right_elbow"] |
| page_title = "مقدار زوایای مورد نظر را برای هر مفصل انتخاب کنید " |
| page_icon = "📝" |
| layout = "centered" |
| |
|
|
| st.set_page_config(page_title=page_title, page_icon=page_icon, layout=layout) |
| st.title(page_title + " " + page_icon) |
|
|
|
|
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| values = [] |
|
|
|
|
| options = st.multiselect('مفاصل', |
| ["گردن", |
| "شانه چپ", |
| "شانه راست", |
| "آرنج چپ", |
| "آرنج راست", |
| "مچ چپ", |
| "مچ راست", |
| "ران جپ", |
| "ران راست", |
| "زانو چپ", |
| "زانو راست", |
| "مچ پای چپ", |
| "مچ پای راست"] |
| ) |
| for option in options: |
| value = st.slider(option, 0, 180, (50, 100)) |
| values.append(value) |
|
|
| with st.form("entry_form", clear_on_submit=True): |
| with st.expander("راهنما"): |
| st.text("""باتوجه به ورزش مورد نظر خود بازه زوایا را مشخص کنید""") |
| submitted = st.form_submit_button("ذخیره دادهها") |
| if submitted: |
| data = [] |
| for i in range(len(options)): |
| row = [options[i], values[i][0], values[i][1]] |
| data.append(row) |
| df = pd.DataFrame(data, columns=['مفصل', 'حداقل زاویه', 'حداکثر زاویه']) |
| st.write(df) |
| df.to_csv('data.csv', index=False) |