사용자가 3 초마다하는 활동을 인식하는 Android 앱을 개발 중입니다 (예 : 자주 사용하는 정적, 걷기, 실행 중). 내 데이터베이스에 다음 값을 증가시키는 Activity 테이블이 있습니다.휴먼 활동 인식을 덜 민감하게 만드는 방법
private int activeTime;
private int longestInactivityInterval;
private int currentInactivityInterval;
private int averageInactInterval;
이러한 값은 조각으로 표시됩니다. 현재, 그것은 매우 민감합니다. 예를 들어 사용자가 정적 인 경우 (즉, 침대 위에 누워있는 경우) 휴대 전화를 주머니에서 꺼내면 "걷기"와 같은 활동을 인식합니다. 인식 활동의 역사는 그과 같습니다
static
static
walking
static
static
가 어떻게이 우발적 "걷기"인식 활동이 '정적'으로 인식되어 있는지 확인 할 수 있습니다. 어떻게 해결할 수 있을까요?
이
인식 어떤 활동에 따라 값을 증가 활동 모니터링 (하고있는 클래스이다.public class ActivityMonitor implements Observer, IActivityMonitor {
private User mUser;
private IActivityDataManager mDataManager;
public ActivityMonitor(IActivityDataManager dataManager) {
mDataManager = dataManager;
}
@Override
public void update(Observable observable, Object activity) {
monitorActivity(activity);
}
private void monitorActivity(Object activityClass) {
switch ((int) activityClass) {
case 0:
//activity = "walking";
case 1:
//activity = "running";
case 3:
//activity = "cycling";
mDataManager.incActiveTime();
mDataManager.clearCurrentInacInterval();
break;
case 2:
//activity = "static";
mDataManager.incCurrentInacInterval();
break;
}
}