|
|
pl:dydaktyka:aml:lab5 [2013/11/15 12:58] esimon [Import do Octave] |
pl:dydaktyka:aml:lab5 [2019/06/27 15:50] |
====== Wykrywanie aktywności użytkownika ====== | |
| |
===== Octave ===== | |
| |
==== Analiza danych ==== | |
Napisz program zapisujący dane z akcelerometru do bazy SQLite. | |
Aby zapisać bazę danych w pamięci urządzenia, wykorzystaj poniższy kod. | |
| |
Ustalmy że: | |
* Baza danych będzie nazywać się **acc** | |
* Będzie zawierać 4 kolumny: **id, acc_x, acc_y, acc_z** | |
| |
<code java> | |
try { | |
File sd = Environment.getExternalStorageDirectory(); | |
File data = Environment.getDataDirectory(); | |
| |
if (sd.canWrite()) { | |
String currentDBPath = "//data//" + context.getApplicationContext().getPackageName() + "//databases//" | |
+ DataBaseHelper.DATABASE_NAME; | |
String backupDBPath = DataBaseHelper.DATABASE_NAME; | |
File currentDB = new File(data, currentDBPath); | |
File backupDB = new File(sd, backupDBPath); | |
| |
FileChannel src = new FileInputStream(currentDB).getChannel(); | |
FileChannel dst = new FileOutputStream(backupDB).getChannel(); | |
dst.transferFrom(src, 0, src.size()); | |
src.close(); | |
dst.close(); | |
} | |
} catch (Exception e) { | |
e.printStackTrace(); | |
} | |
</code> | |
| |
==== Import do Octave ==== | |
Zaimportuj dane z odczytów do Octave: | |
* W tym celu otwórz bazę danych w SQLite: <code bash>sqlite3 acc.db</code> | |
* Ustaw separator danych na tabulator <code sqlite>.mode tabs </code> | |
* Ustaw wyjscie z SQLite do pliku: <code sqlite>.output 'dane.dat'</code> | |
* Wrzuć dane z trzech osi do pliku: <code sql> select acc_x, acc_y, acc_z from acc;</code> | |
| |
Następnie otwórz Octave i zaimportuj dane do zmiennej **Acc**:<code octave> Acc = load('dane.dat');</code> | |
| |
| |
| |
| |
| |
| |
==== Klasteryzacja ==== | |
//Klasteryzacja z wykorzystaniem danych z analizy// | |
| |
===== Android===== | |
// Przetestowanie aplikacji do wykrywania aktywnosci// | |