Create setting.py
Browse files- setting.py +85 -0
setting.py
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import av
|
| 2 |
+
import os
|
| 3 |
+
import sys
|
| 4 |
+
import streamlit as st
|
| 5 |
+
from streamlit_webrtc import VideoHTMLAttributes, webrtc_streamer
|
| 6 |
+
from aiortc.contrib.media import MediaRecorder
|
| 7 |
+
from streamlit_lottie import st_lottie
|
| 8 |
+
import json
|
| 9 |
+
import requests
|
| 10 |
+
import pandas as pd
|
| 11 |
+
|
| 12 |
+
|
| 13 |
+
BASE_DIR = os.path.abspath(os.path.join(__file__, '../../'))
|
| 14 |
+
sys.path.append(BASE_DIR)
|
| 15 |
+
|
| 16 |
+
# from utils import get_mediapipe_pose
|
| 17 |
+
# from process_frame import ProcessFrame
|
| 18 |
+
# from thresholds import get_thresholds_beginner, get_thresholds_pro
|
| 19 |
+
|
| 20 |
+
|
| 21 |
+
|
| 22 |
+
|
| 23 |
+
def get(path: str):
|
| 24 |
+
with open(path, "r") as p:
|
| 25 |
+
return json.load(p)
|
| 26 |
+
|
| 27 |
+
|
| 28 |
+
# lot_sehat = get(".appfiles/sehat_lottie.json")
|
| 29 |
+
# -------------- SETTINGS --------------
|
| 30 |
+
|
| 31 |
+
joints = ["left_shoulder", "right_shoulder", "left_hip",
|
| 32 |
+
"right_hip", "left_knee", "right_knee",
|
| 33 |
+
"left_elbow", "right_elbow"]
|
| 34 |
+
page_title = "مقدار زوایای مورد نظر را برای هر مفصل انتخاب کنید "
|
| 35 |
+
page_icon = "📝" # emojis: https://www.webfx.com/tools/emoji-cheat-sheet/
|
| 36 |
+
layout = "centered"
|
| 37 |
+
# --------------------------------------
|
| 38 |
+
|
| 39 |
+
st.set_page_config(page_title=page_title, page_icon=page_icon, layout=layout)
|
| 40 |
+
st.title(page_title + " " + page_icon)
|
| 41 |
+
|
| 42 |
+
|
| 43 |
+
# lot = st_lottie(animation_data=lot_sehat,
|
| 44 |
+
# speed=.5,
|
| 45 |
+
# reverse=False,
|
| 46 |
+
# loop=True,
|
| 47 |
+
# quality="low",
|
| 48 |
+
# height=225,
|
| 49 |
+
# width=400,
|
| 50 |
+
# key="lot_t")
|
| 51 |
+
|
| 52 |
+
values = []
|
| 53 |
+
|
| 54 |
+
|
| 55 |
+
options = st.multiselect('مفاصل',
|
| 56 |
+
["گردن",
|
| 57 |
+
"شانه چپ",
|
| 58 |
+
"شانه راست",
|
| 59 |
+
"آرنج چپ",
|
| 60 |
+
"آرنج راست",
|
| 61 |
+
"مچ چپ",
|
| 62 |
+
"مچ راست",
|
| 63 |
+
"ران جپ",
|
| 64 |
+
"ران راست",
|
| 65 |
+
"زانو چپ",
|
| 66 |
+
"زانو راست",
|
| 67 |
+
"مچ پای چپ",
|
| 68 |
+
"مچ پای راست"]
|
| 69 |
+
)
|
| 70 |
+
for option in options:
|
| 71 |
+
value = st.slider(option, 0, 180, (50, 100))
|
| 72 |
+
values.append(value)
|
| 73 |
+
|
| 74 |
+
with st.form("entry_form", clear_on_submit=True):
|
| 75 |
+
with st.expander("راهنما"):
|
| 76 |
+
st.text("""باتوجه به ورزش مورد نظر خود بازه زوایا را مشخص کنید""")
|
| 77 |
+
submitted = st.form_submit_button("ذخیره دادهها")
|
| 78 |
+
if submitted:
|
| 79 |
+
data = []
|
| 80 |
+
for i in range(len(options)):
|
| 81 |
+
row = [options[i], values[i][0], values[i][1]]
|
| 82 |
+
data.append(row)
|
| 83 |
+
df = pd.DataFrame(data, columns=['مفصل', 'حداقل زاویه', 'حداکثر زاویه'])
|
| 84 |
+
st.write(df)
|
| 85 |
+
df.to_csv('data.csv', index=False)
|