Если это ваш первый визит, рекомендуем почитать справку по форуму. Для размещения своих сообщений необходимо зарегистрироваться. Для просмотра сообщений выберите раздел. |
Требуется помошь с прогой |
Философия, технологии, алгоритмы! |
|
Опции темы |
16.11.2005, 00:08 | #1 |
любитель выпить
Сообщений: 103
Регистрация: 06.01.2004
Возраст: 37
Не в сети |
Требуется помошь с прогой
Народ, мне нужно написать прогу, которая считает время нажатия клавиши, во время того как кто-то печатает. Потом нужно вывести среднее значения для каждой клавиши. Помогите найти литературу или просто подкиньте идею.
|
16.11.2005, 07:35 | #3 |
IGBT
Сообщений: 535
Регистрация: 09.10.2005
Не в сети |
Обработчики сообщений wm_KeyDown и wm_KeyUp А вот как время измерять точно не знаю нажате клавиши меньше секунды погрешность измерения высокая Я бы использовал RDTSC это счетчик который увеличивается на один при каждом такте проца Точность измерения интервала получается очень высокой Если интерсно могу выложить пример получения тактов правда он на Delphi
|
16.11.2005, 21:42 | #7 |
IGBT
Сообщений: 535
Регистрация: 09.10.2005
Не в сети |
const
D32 = $66; function RDTSC: comp; var TimeStamp: record case byte of 1: (Whole: comp); 2: (Lo, Hi: Longint); end; begin asm db $0F; db $31; {$ifdef Cpu386} mov [TimeStamp.Lo], eax mov [TimeStamp.Hi], edx {$else} db D32 mov word ptr TimeStamp.Lo, AX db D32 mov word ptr TimeStamp.Hi, DX {$endif} end; Result := TimeStamp.Whole; end; function CompToStr(N: comp): String; begin Result := Format('%.0n', [N]); end; procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption := CompToStr(RDTSC) + ' тактов'; end; типа такого В принцеипе я думаю можно без заморочек использовать GetTickCount -при нажатии присвоить после отпуска вычесть А то со счетчиком тактов я загнался |
20.11.2005, 13:07 | #11 |
error #65535
Сообщений: 5,240
Регистрация: 16.11.2003
Возраст: 24
Не в сети |
имхо, статистика там - это последние шаги идентификации, сначала эти ряды (периоды нажатий) по всяким фурье раскладывать, нейросети лепить (или любой другой способ из сотен возможных) итд.
Просто посчитать цифирку средних значений и сказать, Петя - это "21", Вася - это "12", было бы ЛОЛ =) Я бы за такое нобелевки не пожалел =) |
20.11.2005, 23:18 | #14 |
любитель выпить
Сообщений: 103
Регистрация: 06.01.2004
Возраст: 37
Не в сети |
-=Женек=-
maximn Я конечно не собираюсь сделать все так просто, и мат статистику изучаю итд и тп. НО для меня сначала проще сделать на уровне Вася=12 МАША=906090)). А потом уже усложнять. Я не так сильно искушен в программировании, как здесь присутсвующие, так что буду идти по пути наименьшего сопротивления)). Kerish Если че-то есть выкладывай буду только признателен. |
21.11.2005, 21:58 | #16 | |
///
Сообщений: 9,724
Регистрация: 02.04.2005
Возраст: 43
Не в сети |
Цитата:
|
|
21.11.2005, 23:06 | #17 | |
error #65535
Сообщений: 5,240
Регистрация: 16.11.2003
Возраст: 24
Не в сети |
Цитата:
ну процитировал ты меня, наверное ко мне. если так, то тогда: 1. гугли слова "сарказм" и "юмор" 2. речь об идентификации по нажатиям клавиш а не по голосу 3. "Ты что не работал с программами распознавания голоса?" покажи мне парочку с достаточно малым процентом ошибки, которым можно в качестве тренировки дать "трезвую речь", а они потом "угадают" того же человека по его "пьяной" речи. |
|