30 āĻ¨āĻā§āĻŽā§āĻŦāĻ° - 1 āĻĄāĻŋāĻ¸ā§āĻŽā§āĻŦāĻ° āĻ¨āĻŋāĻāĻ¨āĻŋ āĻ¨āĻāĻā§āĻ°ā§āĻĄā§ āĻ
āĻ¨ā§āĻˇā§āĻ āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻŽāĻ°āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ˛āĻŦ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻā§āĻāĻžāĻŦā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒāĻŖā§āĻ¯āĻāĻŋāĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋ, āĻ¯āĻžāĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻļā§āĻˇ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻ¸ā§āĻĨāĻžāĻ¨ āĻ āĻ§āĻŋāĻāĻžāĻ° āĻāĻ°ā§āĻāĻŋāĨ¤
āĻšā§āĻ¯āĻžāĻāĻžāĻĨāĻ¨ā§ ā§§ā§ĻāĻāĻŋāĻ° āĻŦā§āĻļāĻŋ āĻĻāĻ˛ āĻ āĻāĻļ āĻ¨ā§āĻ¯āĻŧāĨ¤ āĻāĻāĻž āĻāĻžāĻ˛ āĻ¯ā§ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŋāĻā§ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ āĻā§āĻāĻ˛ āĻĨā§āĻā§ āĻāĻ¸ā§āĻā§āĻ¨. āĻšā§āĻ¯āĻžāĻāĻžāĻĨāĻ¨ā§āĻ° āĻā§āĻ¨ā§āĻ¯ā§ āĻāĻŋāĻ˛ "āĻā§āĻ°ā§āĻŽāĻ˛āĻŋāĻ¨āĻ¸ā§āĻāĻŋ āĻ āĻ¨ āĻĒā§āĻā§āĻāĻ¨" āĻāĻŽāĻĒā§āĻ˛ā§āĻā§āĻ¸, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¨āĻŋāĻāĻ¨āĻŋ āĻ¨āĻāĻā§āĻ°ā§āĻĄā§āĻ° āĻĒā§āĻ°āĻžāĻā§āĻ¨ āĻĢāĻā§āĻā§āĻ°āĻžāĻĢāĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻĻāĻ˛ā§ āĻā§āĻ˛āĻŋāĻ¯āĻŧā§ āĻ°āĻžāĻāĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛! (āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻŽāĻ¨ā§ āĻāĻ°āĻŋāĻ¯āĻŧā§ āĻĻāĻŋāĻā§āĻāĻŋ āĻ¯ā§ āĻāĻ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§ āĻāĻ¨ā§āĻā§āĻ˛ā§āĻ° āĻā§āĻ¨ā§āĻĻā§āĻ°ā§āĻ¯āĻŧ āĻ āĻĢāĻŋāĻ¸ āĻ¨āĻŋāĻāĻ¨āĻŋ āĻ¨ā§āĻāĻā§āĻ°ā§āĻĄā§ āĻ āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤)āĨ¤ āĻ āĻāĻļāĻā§āĻ°āĻšāĻŖāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻā§āĻĄ āĻ˛āĻŋāĻāĻ¤ā§ 10 āĻāĻ¨ā§āĻāĻž āĻ¸āĻŽāĻ¯āĻŧ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻļā§āĻˇā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻāĻŋāĻ˛ āĻāĻāĻāĻŋ āĻĄā§āĻŽā§ āĻ¸ā§āĻļāĻ¨ā§āĻ° āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻ¯ā§ āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻŋāĻā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ¯āĻŧ āĻ§āĻžāĻ°āĻŖāĻžāĻā§āĻ˛āĻŋ āĻĨā§āĻā§ āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻĒāĻŖā§āĻ¯āĻĻā§āĻ°āĻŦā§āĻ¯, āĻāĻ˛āĻāĻžāĻŦāĻžāĻ°, āĻāĻžāĻŦāĻžāĻ°, āĻ¸āĻŦāĻāĻŋāĻā§āĻ āĻāĻŋāĻ˛ āĻ¸ā§āĻāĻžāĻ¨ā§!
āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻ¨ā§āĻā§āĻ˛ āĻāĻā§āĻāĻŋāĻāĻāĻžāĻŦā§ āĻā§āĻ¯āĻžāĻŽā§āĻ°āĻž, āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻŋāĻāĻ, āĻ¨āĻŋāĻāĻ°āĻžāĻ˛ āĻāĻŽā§āĻĒāĻŋāĻāĻ āĻ¸ā§āĻāĻŋāĻ 2 āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĻā§āĨ¤
āĻāĻžāĻ°ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨
āĻāĻāĻāĻŋ āĻĢā§āĻ°āĻŋ-āĻĢāĻ°ā§āĻŽ āĻšā§āĻ¯āĻžāĻāĻžāĻĨāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋāĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¨ āĻ āĻāĻļāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻ˛ā§āĻā§āĻ āĻŦā§āĻā§ āĻ¨ā§āĻāĻ¯āĻŧāĻžāĨ¤ āĻāĻŽāĻ°āĻž āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻŽāĻ¨ āĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ¸āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ āĻ¯āĻž āĻāĻāĻ¨āĻ āĻĒāĻŖā§āĻ¯āĻāĻŋāĻ¤ā§ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻ¯ā§āĻšā§āĻ¤ā§ āĻā§āĻˇāĻŖāĻžāĻāĻŋ āĻŦāĻ˛ā§āĻā§ āĻ¯ā§ āĻāĻāĻŋ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¸ā§āĻŦāĻžāĻāĻ¤āĨ¤
āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻāĻ°ā§
- āĻ¤āĻžāĻ¤ā§āĻ¤ā§āĻŦāĻŋāĻāĻāĻžāĻŦā§, āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻŽāĻŋāĻ˛āĻŋāĻ¤ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻ¯āĻž āĻļāĻŦā§āĻĻ āĻāĻŦāĻ āĻāĻŋāĻ¤ā§āĻ° āĻāĻāĻ¯āĻŧ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ āĻāĻžāĻ āĻāĻ°āĻŦā§, āĻ¯āĻž āĻ¸āĻ āĻŋāĻāĻ¤āĻž āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°āĻŦā§āĨ¤
- āĻā§āĻ¯āĻžāĻŽā§āĻ°āĻžāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ°ā§āĻŖ āĻĻā§āĻāĻžāĻ° āĻā§āĻŖ āĻĨāĻžāĻā§; āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻāĻ˛āĻžāĻāĻž āĻāĻāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻžāĻ§āĻŋāĻ āĻā§āĻ¯āĻžāĻŽā§āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ; āĻļāĻŦā§āĻĻā§āĻ° āĻāĻŽāĻ¨ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ¨ā§āĻāĨ¤
āĻāĻ¸ā§āĻ¨ āĻ§āĻžāĻ°āĻŖāĻžāĻāĻŋ āĻŦāĻŋāĻāĻžāĻļ āĻāĻ°āĻŋ: āĻāĻ¸ā§āĻ¨ āĻā§āĻāĻ°āĻž āĻŦāĻŋāĻāĻžāĻā§āĻ° āĻ§āĻžāĻ°āĻŖāĻžāĻāĻŋāĻā§ āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻŋāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻžāĻ¨ āĻā§āĻāĻāĻāĻ āĻ āĻā§āĻ°āĻžāĻšāĻ āĻ¸āĻ¨ā§āĻ¤ā§āĻˇā§āĻāĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨. āĻ¯āĻĻāĻŋ āĻā§āĻ°āĻžāĻšāĻāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻ¤ā§ āĻ
āĻ¸āĻ¨ā§āĻ¤ā§āĻˇā§āĻ āĻšāĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻ¸ā§āĻŦāĻ° āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻ
āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻļāĻžāĻ¸āĻāĻā§ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻŽāĻžāĻ¨āĻŦ āĻāĻ¯āĻŧā§āĻ¸ āĻ¸ā§āĻŦā§āĻā§āĻ¤āĻŋ āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻ°āĻžāĻšāĻāĻĻā§āĻ° āĻĨā§āĻā§ āĻ¸ā§āĻā§āĻ° āĻāĻ°ā§āĻŽāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ āĻŋāĻ āĻāĻā§, āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻĻā§āĻāĻžāĻ¨ āĻāĻ°ā§āĻŽāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻ¨āĻŋāĻā§āĻĻā§āĻ° āĻāĻāĻ°āĻŖ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻšāĻŦā§, āĻĻāĻ˛ā§āĻ° āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨, āĻāĻžāĻ˛ āĻļā§āĻ¨āĻžāĻā§āĻā§!
āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧāĻ¤āĻž āĻĒā§āĻ°āĻŖāĻ¯āĻŧāĻ¨ āĻāĻ°āĻŋ:
- āĻ˛āĻā§āĻˇā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¸ā§āĻ° āĻā§āĻ āĻāĻāĻžāĻ°
- āĻ°āĻŋāĻ¯āĻŧā§āĻ˛ āĻāĻžāĻāĻŽ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨
- āĻāĻŽ āĻĻāĻžāĻŽ
- āĻ¸āĻšāĻ āĻŽāĻžāĻĒāĻ¯ā§āĻā§āĻ¯āĻ¤āĻž
āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŽāĻ°āĻž āĻ˛āĻā§āĻˇā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻžāĻ 3 āĻ¸āĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻŋ
āĻāĻāĻžāĻ¨ā§ āĻāĻ¨āĻ¸āĻŋāĻāĻ¸-āĻāĻ° āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ - āĻāĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ¸āĻŋāĻāĻ¨āĻāĻ¨ āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻžāĻ˛ āĻāĻžāĻ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¯āĻĻāĻŋ āĻāĻāĻŋāĻ¤ā§ āĻāĻžāĻ¸ā§āĻāĻŽ āĻ¸ā§āĻ¤āĻ° āĻ¸āĻš āĻāĻāĻāĻŋ āĻŽāĻĄā§āĻ˛ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻ¨āĻŋāĻŽā§āĻ¨-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻ¨ āĻāĻļāĻž āĻāĻ°ā§āĻ¨āĨ¤
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§: āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻŽāĻžāĻāĻā§āĻ°ā§āĻĢā§āĻ¨ āĻĒā§āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻāĻāĻāĻ¸āĻŦāĻŋ āĻŽāĻžāĻāĻā§āĻ°ā§āĻĢā§āĻ¨ āĻāĻ°āĻŦā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻ°āĻĒāĻŋāĻāĻ-āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻ¸āĻžāĻĨā§ āĻāĻžāĻ˛ āĻĻā§āĻāĻžāĻŦā§ āĻ¨āĻžāĨ¤ āĻ¤āĻŦā§ āĻāĻāĻžāĻ¨ā§āĻ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĻāĻŋ āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻ
āĻ°ā§āĻĨā§ "āĻāĻžāĻā§āĻ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤" āĻāĻ¯āĻŧā§āĻ¸ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻāĻŋāĻ āĻĨā§āĻā§ āĻāĻ¯āĻŧā§āĻ¸ āĻŦāĻ¨āĻ¨ā§āĻ āĻŦā§āĻ°ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ
āĻĨā§āĻā§ āĻ°āĻžāĻ¸ā§āĻĒāĻŦāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°ā§āĻ¨
arecord -d 5 -r 16000 test.wav
āĻāĻŽāĻžāĻ° āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ¨ā§āĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¯ā§ āĻŽāĻžāĻāĻā§āĻ°ā§āĻĢā§āĻ¨āĻāĻŋ āĻā§āĻŦ āĻ¸āĻāĻŦā§āĻĻāĻ¨āĻļā§āĻ˛ āĻāĻŦāĻ āĻāĻžāĻ˛ āĻļāĻŦā§āĻĻ āĻ¤ā§āĻ˛ā§āĨ¤ āĻāĻāĻŋ āĻ āĻŋāĻ āĻāĻ°āĻ¤ā§, āĻāĻ¸ā§āĻ¨ āĻāĻ˛āĻ¸āĻžāĻŽāĻŋāĻā§āĻ¸āĻžāĻ°ā§ āĻ¯āĻžāĻ, āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻ¨āĻĒā§āĻ āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻ¸ā§āĻ¤āĻ° 50-60% āĻāĻŽāĻŋāĻ¯āĻŧā§ āĻĻāĻŋāĻ¨āĨ¤
āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĻāĻŋāĻ¯āĻŧā§ āĻŦāĻĄāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻ¸āĻŦāĻāĻŋāĻā§ āĻĢāĻŋāĻ āĻāĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻŽāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻĸāĻžāĻāĻ¨āĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸ā§āĻāĻ āĻŦā§āĻ¤āĻžāĻŽ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻā§āĻā§
AIY āĻāĻ¯āĻŧā§āĻ¸ āĻāĻŋāĻāĻāĻŋ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻ°āĻž āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŋ āĻ¯ā§ āĻāĻāĻāĻŋ RGB āĻŦā§āĻ¤āĻžāĻŽ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻžāĻ° āĻŦā§āĻ¯āĻžāĻāĻ˛āĻžāĻāĻ āĻ¸āĻĢā§āĻāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž "Google AIY Led" āĻ
āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻā§āĻāĻā§ āĻĒāĻžāĻ:
āĻā§āĻ¨ āĻ¸ā§āĻŦā§āĻā§āĻ¤ āĻāĻŦā§āĻ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻ āĻŦā§āĻ¤āĻžāĻŽāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž, āĻāĻŽāĻžāĻĻā§āĻ° āĻŽāĻžāĻ¤ā§āĻ° 7 āĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ āĻāĻā§, āĻāĻŦāĻ āĻŦā§āĻ¤āĻžāĻŽāĻāĻŋāĻ¤ā§ 8 āĻāĻŋ āĻ°āĻ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻĨā§āĻˇā§āĻ!
āĻāĻŽāĻ°āĻž GPIO āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ¯āĻŧā§āĻ¸ āĻŦāĻ¨ā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻŦā§āĻ¤āĻžāĻŽāĻāĻŋ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻŋ, āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻā§āĻ˛āĻŋ āĻ˛ā§āĻĄ āĻāĻ°āĻŋ (āĻāĻā§āĻ˛āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ AIY āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ° āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻŋāĻā§ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻāĻā§)
from aiy.leds import Leds, Color
from aiy.leds import RgbLeds
āĻāĻ¸ā§āĻ¨ āĻāĻāĻāĻŋ āĻĄāĻŋāĻā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻŦā§āĻā§āĻ° āĻāĻāĻāĻŋ RGB Tuple āĻāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻ°āĻ āĻĨāĻžāĻāĻŦā§ āĻāĻŦāĻ aiy.leds.Leds āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ āĻĨāĻžāĻāĻŦā§, āĻ¯āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻŽāĻ°āĻž āĻ°āĻāĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻŦ:
led_dict = {'neutral': (255, 255, 255), 'happy': (0, 255, 0), 'sad': (0, 255, 255), 'angry': (255, 0, 0), 'fearful': (0, 0, 0), 'disgusted': (255, 0, 255), 'surprised': (255, 255, 0)}
leds = Leds()
āĻāĻŦāĻ āĻ āĻŦāĻļā§āĻˇā§, āĻāĻāĻāĻŋ āĻāĻŦā§āĻā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻĻā§āĻŦāĻžāĻŖā§ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻ°āĻž āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ (āĻā§ āĻĻā§āĻŦāĻžāĻ°āĻž) āĻŦā§āĻ¤āĻžāĻŽā§āĻ° āĻ°āĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻŦāĨ¤
leds.update(Leds.rgb_on(led_dict.get(classes[prediction])))
āĻŦā§āĻ¤āĻžāĻŽ, āĻŦāĻžāĻ°ā§āĻ¨!
āĻāĻ¯āĻŧā§āĻ¸ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻž
āĻāĻŽāĻ°āĻž āĻŽāĻžāĻāĻā§āĻ°ā§āĻĢā§āĻ¨ āĻĨā§āĻā§ āĻ¸ā§āĻā§āĻ°ā§āĻŽ āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ pyaudio āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦ āĻāĻŦāĻ āĻļāĻŦā§āĻĻ āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻāĻ¯āĻŧā§āĻ¸ āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻ¤ā§ webrtcvad āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§ˇ āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸āĻžāĻ°āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻ ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸āĻāĻžāĻŦā§ āĻāĻ¯āĻŧā§āĻ¸ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻŦ āĻāĻŦāĻ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻŦāĨ¤
āĻ¯ā§āĻšā§āĻ¤ā§ āĻ¸āĻ°āĻŦāĻ°āĻžāĻšāĻā§āĻ¤ āĻāĻŖā§āĻĄā§āĻ° āĻāĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° webrtcvad-āĻāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§ - āĻāĻāĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ 10/20/30ms āĻāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻšāĻ¤ā§ āĻšāĻŦā§, āĻāĻŦāĻ āĻāĻŦā§āĻāĻā§āĻ˛āĻŋ āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŽāĻĄā§āĻ˛ā§āĻ° āĻĒā§āĻ°āĻļāĻŋāĻā§āĻˇāĻŖ (āĻ¯ā§āĻŽāĻ¨ āĻāĻŽāĻ°āĻž āĻĒāĻ°ā§ āĻļāĻŋāĻāĻŦ) āĻāĻāĻāĻŋ 48kHz āĻĄā§āĻāĻžāĻ¸ā§āĻā§ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻāĻŽāĻ°āĻž āĻāĻ°āĻŦ 48000Ã20ms/1000Ã1(āĻŽāĻ¨ā§)=960 āĻŦāĻžāĻāĻ āĻāĻāĻžāĻ°ā§āĻ° āĻ āĻāĻļāĻā§āĻ˛āĻŋ āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤ Webrtcvad āĻāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻŖā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ¤ā§āĻ¯/āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻŦā§, āĻ¯āĻž āĻ āĻāĻļā§ āĻā§āĻā§āĻ° āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻŦāĻž āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻāĻ¸ā§āĻ¨ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻ¯āĻžāĻ:
- āĻ¯ā§āĻāĻžāĻ¨ā§ āĻā§āĻ āĻāĻā§ āĻ¸ā§āĻ āĻāĻŖā§āĻĄāĻā§āĻ˛āĻŋāĻā§ āĻāĻŽāĻ°āĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻŦ; āĻ¯āĻĻāĻŋ āĻā§āĻ āĻ¨āĻž āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻ°āĻž āĻāĻžāĻ˛āĻŋ āĻāĻŖā§āĻĄā§āĻ° āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ° āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°āĻŦāĨ¤
- āĻ¯āĻĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻāĻŖā§āĻĄā§āĻ° āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ° āĻšāĻ¯āĻŧ >=30 (600 ms), āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻ°āĻž āĻāĻŽā§ āĻĨāĻžāĻāĻž āĻāĻŖā§āĻĄāĻā§āĻ˛āĻŋāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻāĻžāĻ° āĻĻā§āĻāĻŋ; āĻ¯āĻĻāĻŋ āĻšāĻ¯āĻŧ >250, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻŋāĻā§ āĻ¸āĻžāĻ°āĻŋāĻ¤ā§ āĻ¯ā§āĻ āĻāĻ°āĻŋ; āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻāĻŽāĻ°āĻž āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻŋ āĻ¯ā§ āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻ°ā§āĻāĻ°ā§āĻĄā§āĻ° āĻ¸ā§āĻĒāĻŋāĻāĻžāĻ° āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŽāĻĄā§āĻ˛ā§āĻ° āĻāĻžāĻā§ āĻāĻāĻŋ āĻāĻžāĻāĻ¯āĻŧāĻžāĻ¨ā§ āĻ¯āĻĨā§āĻˇā§āĻ āĻ¨āĻ¯āĻŧāĨ¤
- āĻ¯āĻĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻāĻŖā§āĻĄāĻā§āĻ˛āĻŋāĻ° āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ° āĻāĻāĻ¨āĻ <30 āĻĨāĻžāĻā§, āĻāĻŦāĻ āĻāĻŽā§ āĻĨāĻžāĻāĻž āĻāĻŖā§āĻĄāĻā§āĻ˛āĻŋāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻāĻžāĻ° 300 āĻāĻžāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻ°āĻž āĻāĻ°āĻ āĻ¸āĻ āĻŋāĻ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻĻā§āĻŦāĻžāĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻžāĻ°āĻŋāĻ¤ā§ āĻāĻŖā§āĻĄāĻāĻŋ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻŦāĨ¤ (āĻāĻžāĻ°āĻŖ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻĨā§ āĻāĻŦā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¤ā§ āĻĨāĻžāĻā§)
def to_queue(frames):
d = np.frombuffer(b''.join(frames), dtype=np.int16)
return d
framesQueue = queue.Queue()
def framesThreadBody():
CHUNK = 960
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 48000
p = pyaudio.PyAudio()
vad = webrtcvad.Vad()
vad.set_mode(2)
stream = p.open(format=FORMAT,
channels=CHANNELS,
rate=RATE,
input=True,
frames_per_buffer=CHUNK)
false_counter = 0
audio_frame = []
while process:
data = stream.read(CHUNK)
if not vad.is_speech(data, RATE):
false_counter += 1
if false_counter >= 30:
if len(audio_frame) > 250:
framesQueue.put(to_queue(audio_frame,timestamp_start))
audio_frame = []
false_counter = 0
if vad.is_speech(data, RATE):
false_counter = 0
audio_frame.append(data)
if len(audio_frame) > 300:
framesQueue.put(to_queue(audio_frame,timestamp_start))
audio_frame = []
āĻāĻāĻŋ āĻĒāĻžāĻŦāĻ˛āĻŋāĻ āĻĄā§āĻŽā§āĻ¨ā§ āĻĒā§āĻ°āĻžāĻ-āĻĒā§āĻ°āĻļāĻŋāĻā§āĻˇāĻŋāĻ¤ āĻŽāĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŋāĻĨā§āĻŦ, āĻā§āĻāĻ˛ā§ āĻ¯āĻžāĻ¨, āĻ¤āĻŦā§ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻ°āĻ āĻāĻ āĻŋāĻ¨ āĻ āĻāĻļ, āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨āĻĒā§āĻ āĻĄā§āĻāĻžāĻ¤ā§ āĻŽāĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ OpenVINO-āĻāĻ° āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§āĻ¨ - IR (āĻāĻ¨ā§āĻāĻžāĻ°āĻŽāĻŋāĻĄāĻŋāĻ¯āĻŧā§āĻ āĻ°āĻŋāĻĒā§āĻ°ā§āĻā§āĻ¨ā§āĻā§āĻļāĻ¨)āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻŋāĻĨā§āĻŦ āĻĨā§āĻā§ āĻĒā§āĻ°āĻžāĻ¯āĻŧ 5-7 āĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻāĻŋ, āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻāĻŦā§āĻāĻā§āĻ˛āĻŋāĻā§ āĻ¸ā§āĻŦā§āĻā§āĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻŽāĻĄā§āĻ˛āĻāĻŋ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻžāĻ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻāĻ¯āĻŧā§āĻ¸ āĻ¸ā§āĻŦā§āĻā§āĻ¤āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ°āĻ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ - āĻ¤āĻžāĻ°āĻž āĻāĻ°āĻ āĻāĻāĻŋāĻ˛ āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻŽāĻ°āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻĒāĻ° āĻĢā§āĻāĻžāĻ¸:
- āĻāĻŖā§āĻ āĻĨā§āĻā§ āĻāĻŦā§āĻ-
https://github.com/alexmuhr/Voice_Emotion
āĻāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¨ā§āĻ¤āĻŋ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§: āĻ āĻĄāĻŋāĻ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻāĻžāĻ°ā§āĻ° āĻĒā§āĻ¯āĻžāĻ¸ā§āĻā§ āĻāĻžāĻāĻž āĻšāĻ¯āĻŧ, āĻāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ¸ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻŋāĻāĻŽāĻāĻĢāĻ¸āĻŋāĻ¸āĻŋ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° CNN āĻ āĻāĻ¨āĻĒā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŽāĻž āĻĻāĻŋāĻ¨ - āĻāĻŖā§āĻ āĻ¸ā§āĻŦāĻ° āĻ¸ā§āĻŦā§āĻā§āĻ¤āĻŋ -
https://github.com/linhdvu14/vggvox-speaker-identification
āĻāĻāĻžāĻ¨ā§, MFCC āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸ā§āĻĒā§āĻāĻā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻŋ, FFT āĻāĻ° āĻĒāĻ°ā§ āĻāĻŽāĻ°āĻž āĻ¸āĻŋāĻāĻ¨āĻāĻ¨āĻā§ āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻĢāĻŋāĻĄ āĻāĻ°āĻŋ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻĒā§āĻā§ āĻāĻŽāĻ°āĻž āĻāĻ¯āĻŧā§āĻ¸ā§āĻ° āĻā§āĻā§āĻāĻ° āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻĒāĻžāĻāĨ¤
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻ¤āĻ¤ā§āĻ¤ā§āĻŦ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻŽāĻĄā§āĻ˛ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻŦāĨ¤ āĻāĻĒā§āĻ¨āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ°āĻ¯āĻŧā§āĻā§:
- āĻŽāĻĄā§āĻ˛ āĻāĻŋāĻĄāĻŧāĻŋāĻ¯āĻŧāĻžāĻāĻžāĻ¨āĻž āĻā§āĻ˛ā§āĻ¨, āĻ¯ā§ āĻŽāĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻĨā§āĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻŖā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
- āĻŽāĻĄā§āĻ˛ āĻ āĻĒā§āĻāĻŋāĻŽāĻāĻžāĻ°, āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ (āĻā§āĻ¨āĻ¸āĻ°āĻĢā§āĻ˛ā§, ONNX āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ) āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻŽāĻĄā§āĻ˛āĻā§ āĻāĻ¨ā§āĻāĻžāĻ°āĻŽāĻŋāĻĄāĻŋāĻ¯āĻŧā§āĻ āĻ°āĻŋāĻĒā§āĻ°ā§āĻā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŽāĻ°āĻž āĻāĻ°āĻ āĻāĻžāĻ āĻāĻ°āĻŦ
- āĻāĻ¨āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻāĻā§āĻāĻŋāĻ¨ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ°, āĻ āĻāĻŖāĻŋāĻ¤ āĻāĻŋāĻĒāĻ¸ āĻāĻŦāĻ āĻ¨āĻŋāĻāĻ°āĻžāĻ˛ āĻāĻŽā§āĻĒāĻŋāĻāĻ āĻ¸ā§āĻāĻŋāĻ āĻ ā§āĻ¯āĻžāĻā§āĻ¸āĻŋāĻ˛āĻžāĻ°ā§āĻāĻ°ā§ āĻāĻāĻāĻ° āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻā§ āĻŽāĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ
- OpenCV āĻāĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ (āĻāĻ¨āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻāĻā§āĻāĻŋāĻ¨ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¸āĻš)
āĻāĻāĻāĻ° āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŽāĻĄā§āĻ˛ āĻĻā§āĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§: .xml āĻāĻŦāĻ .bināĨ¤
āĻŽāĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻŽāĻĄā§āĻ˛ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻāĻžāĻ°ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ IR āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ:python /opt/intel/openvino/deployment_tools/model_optimizer/mo_tf.py --input_model speaker.hdf5.pb --data_type=FP16 --input_shape [1,512,1000,1]
--data_type
āĻāĻĒāĻ¨āĻžāĻā§ āĻĄā§āĻāĻž āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻĄā§āĻ˛āĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤ FP32, FP16, INT8 āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤āĨ¤ āĻ¸āĻ°ā§āĻŦā§āĻ¤ā§āĻ¤āĻŽ āĻĄā§āĻāĻž āĻāĻžāĻāĻĒ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻŦā§āĻ¸ā§āĻ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
--input_shape
āĻāĻ¨āĻĒā§āĻ āĻĄā§āĻāĻžāĻ° āĻŽāĻžāĻ¤ā§āĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĨ¤ āĻāĻāĻŋāĻā§ āĻāĻ¤āĻŋāĻļā§āĻ˛āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž C++ API-āĻ¤ā§ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻšāĻā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻāĻ¤āĻĻā§āĻ° āĻāĻ¨āĻ¨ āĻāĻ°āĻŋāĻ¨āĻŋ āĻāĻŦāĻ āĻŽāĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋāĻā§ āĻ āĻŋāĻ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻ° āĻĒāĻ°ā§, āĻāĻ¸ā§āĻ¨ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻŽāĻĄā§āĻ˛āĻāĻŋāĻā§ IR āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ DNN āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ OpenCV-āĻ āĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻĢāĻ°ā§āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻ°āĻŋāĨ¤import cv2 as cv emotionsNet = cv.dnn.readNet('emotions_model.bin', 'emotions_model.xml') emotionsNet.setPreferableTarget(cv.dnn.DNN_TARGET_MYRIAD)
āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻļā§āĻˇ āĻ˛āĻžāĻāĻ¨ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¨āĻŋāĻāĻ°āĻžāĻ˛ āĻāĻŽā§āĻĒāĻŋāĻāĻ āĻ¸ā§āĻāĻŋāĻā§ āĻāĻŖāĻ¨āĻž āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ, āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ°ā§ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻžāĻāĻ¯āĻŧā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻž, āĻāĻĒāĻ¨āĻžāĻ° āĻāĻāĻāĻŋ āĻ˛āĻžāĻ āĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻŦā§āĨ¤
āĻāĻ° āĻĒāĻ°ā§, āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ: āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻ āĻĄāĻŋāĻāĻā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻāĻžāĻ°ā§āĻ° āĻāĻāĻ¨ā§āĻĄā§āĻ¤ā§ āĻāĻžāĻ āĻāĻ°āĻŋ (āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ 0.4 āĻ¸ā§āĻā§āĻ¨ā§āĻĄ), āĻāĻŽāĻ°āĻž āĻāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻāĻ¨ā§āĻĄā§āĻā§ MFCC-āĻ¤ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻŋ, āĻ¯āĻž āĻāĻŽāĻ°āĻž āĻ¤āĻžāĻ°āĻĒāĻ° āĻā§āĻ°āĻŋāĻĄā§ āĻĢāĻŋāĻĄ āĻāĻ°āĻŋ:
emotionsNet.setInput(MFCC_from_window) result = emotionsNet.forward()
āĻāĻ° āĻĒāĻ°ā§, āĻ¸āĻŦ āĻāĻāĻ¨ā§āĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻ˛āĻžāĻ¸ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻāĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻšāĻ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻāĻžāĻĨāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻŦ āĻ āĻĒā§āĻ°ā§āĻ¤āĻŋāĻāĻ° āĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ¸āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻ¸āĻŽāĻ¯āĻŧ āĻĨāĻžāĻā§āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻ¨āĻ āĻ āĻ¨ā§āĻ āĻāĻžāĻ āĻŦāĻžāĻāĻŋ āĻāĻā§, āĻ¤āĻžāĻ āĻāĻ˛ā§āĻ¨ āĻāĻāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ - āĻāĻŽāĻ°āĻž āĻāĻ¯āĻŧā§āĻ¸ āĻ°āĻŋāĻāĻāĻ¨āĻŋāĻļāĻ¨ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻŦāĨ¤ āĻāĻŽāĻ¨ āĻāĻŋāĻā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¯āĻžāĻ¤ā§ āĻāĻā§ āĻĨā§āĻā§ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻž āĻāĻ¯āĻŧā§āĻ¸ā§āĻ° āĻ¸ā§āĻĒā§āĻāĻā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻā§āĻŦ āĻāĻŽ āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻžāĻāĻŋ āĻāĻā§, āĻāĻŽāĻ°āĻž āĻ¯āĻ¤āĻāĻž āĻ¸āĻŽā§āĻāĻŦ āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻŦāĨ¤
āĻ¯āĻĨāĻž, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻ¸ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ (āĻāĻāĻŋ āĻāĻĒāĻ°ā§ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻā§āĻŦā§āĻ°ā§āĻĄ āĻĨā§āĻā§ āĻŦāĻžāĻ§āĻž āĻĻāĻŋāĻ˛ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻāĻ¯āĻŧā§āĻ¸ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŦā§)āĨ¤
āĻāĻ¸ā§āĻ¨ āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŋ:
python3 voice_db/record_voice.py test.wav
āĻāĻŽāĻ°āĻž āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻ¨ā§āĻ° āĻāĻŖā§āĻ āĻ¸ā§āĻŦāĻ° āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻŋ (āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻ¤āĻŋāĻ¨āĻāĻ¨ āĻĻāĻ˛ā§āĻ° āĻ¸āĻĻāĻ¸ā§āĻ¯)
āĻāĻ° āĻĒāĻ°ā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻž āĻāĻ¯āĻŧā§āĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ¤ āĻĢā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻā§āĻ°āĻžāĻ¨ā§āĻ¸āĻĢāĻ°ā§āĻŽ āĻāĻ°āĻŋ, āĻāĻāĻāĻŋ āĻ¸ā§āĻĒā§āĻāĻā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻĒāĻžāĻ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻŽā§āĻĒāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ (.npy) āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋ:for file in glob.glob("voice_db/*.wav"): spec = get_fft_spectrum(file) np.save(file[:-4] + '.npy', spec)
āĻĢāĻžāĻāĻ˛ā§ āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤
create_base.py
āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻāĻ¨ āĻāĻŽāĻ°āĻž āĻŽā§āĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻāĻāĻŋ āĻāĻžāĻ˛āĻžāĻ, āĻ¤āĻāĻ¨ āĻāĻŽāĻ°āĻž āĻāĻ āĻ¸ā§āĻĒā§āĻāĻā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋ āĻĨā§āĻā§ āĻāĻā§āĻŦāĻžāĻ°ā§ āĻļā§āĻ°ā§āĻ¤ā§ āĻāĻŽā§āĻŦā§āĻĄāĻŋāĻāĻā§āĻ˛āĻŋ āĻĒāĻžāĻŦ:for file in glob.glob("voice_db/*.npy"): spec = np.load(file) spec = spec.astype('float32') spec_reshaped = spec.reshape(1, 1, spec.shape[0], spec.shape[1]) srNet.setInput(spec_reshaped) pred = srNet.forward() emb = np.squeeze(pred)
āĻ¸āĻžāĻāĻ¨ā§āĻĄā§āĻĄ āĻ¸ā§āĻāĻŽā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻāĻŽāĻŦā§āĻĄāĻŋāĻ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°, āĻāĻŽāĻ°āĻž āĻĒā§āĻ¯āĻžāĻ¸ā§āĻ āĻĨā§āĻā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¯āĻŧā§āĻ¸ā§āĻ° āĻā§āĻ¸āĻžāĻāĻ¨ āĻĻā§āĻ°āĻ¤ā§āĻŦ (āĻ¯āĻ¤ āĻā§āĻ, āĻŦā§āĻļāĻŋ āĻ¸āĻŽā§āĻāĻŦ) āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻāĻŋ āĻāĻžāĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻāĻ¤ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻŦ - āĻĄā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻĨā§āĻ°ā§āĻļāĻšā§āĻ˛ā§āĻĄ āĻ¸ā§āĻ āĻāĻ°āĻŋ āĻĨā§āĻā§ 0.3):
dist_list = cdist(emb, enroll_embs, metric="cosine") distances = pd.DataFrame(dist_list, columns = df.speaker)
āĻļā§āĻˇ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻāĻŽāĻŋ āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ āĻ¯ā§ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ā§āĻ° āĻāĻ¤āĻŋ āĻĻā§āĻ°ā§āĻ¤ āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻ°āĻ 1-2āĻāĻŋ āĻŽāĻĄā§āĻ˛ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻāĻ°ā§āĻā§ (7 āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻĻā§āĻ°ā§āĻ āĻāĻāĻāĻŋ āĻ¨āĻŽā§āĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ 2.5 āĻ˛ā§āĻā§āĻāĻŋāĻ˛)āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ° āĻ¨āĻ¤ā§āĻ¨ āĻŽāĻĄā§āĻ˛ āĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŋāĻ˛ āĻ¨āĻž āĻāĻŦāĻ āĻāĻ¯āĻŧā§āĻŦ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻ˛ā§āĻāĻžāĻ° āĻĻāĻŋāĻā§ āĻŽāĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻ¯āĻŧā§āĻŦ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨
āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧ: āĻāĻŽāĻ°āĻž āĻŦāĻžāĻĄāĻŧāĻŋ āĻĨā§āĻā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ°āĻžāĻāĻāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻŋ, āĻāĻāĻŋ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻāĻŦāĻ āĻ˛ā§āĻ¯āĻžāĻĒāĻāĻĒāĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻāĻ°ā§āĨ¤
āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻšāĻ˛ āĻĢā§āĻ°āĻ¨ā§āĻ āĻāĻŦāĻ āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻžāĻ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻĄ-āĻā§-āĻāĻ¨ā§āĻĄ āĻŽā§āĻ¸ā§āĻ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛, āĻāĻ¯āĻŧā§āĻŦāĻ¸āĻā§āĻ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ (http āĻāĻāĻžāĻ° tcp āĻĒā§āĻ°ā§āĻā§āĻāĻ˛)āĨ¤
āĻĒā§āĻ°āĻĨāĻŽ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĨā§āĻā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ¤ āĻ¤āĻĨā§āĻ¯ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ āĻ°ā§āĻĨāĻžā§, json-āĻ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻāĻŦāĻŋāĻˇā§āĻ¯āĻĻā§āĻŦāĻžāĻŖā§, āĻ¯āĻž āĻ¤āĻžāĻĻā§āĻ° āĻ¯āĻžāĻ¤ā§āĻ°āĻžāĻ° āĻ āĻ°ā§āĻ§ā§āĻ āĻĒāĻĨ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻĨāĻžāĻā§ āĻ¯āĻžāĻ¤ā§ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻŽāĻžāĻ¨āĻ¸āĻŋāĻ āĻĒāĻāĻā§āĻŽāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĒāĻ°āĻŋāĻ¸āĻāĻā§āĻ¯āĻžāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻ āĻĒā§āĻ¯āĻžāĻā§āĻāĻāĻŋ āĻ¤āĻžāĻ°āĻĒāĻ° āĻĢā§āĻ°āĻ¨ā§āĻāĻāĻ¨ā§āĻĄā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻĒāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻ¯āĻŧā§āĻŦāĻ¸āĻā§āĻ āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°ā§ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽ āĻā§āĻ˛āĻ āĻāĻžāĻˇāĻžāĻ¯āĻŧ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§; āĻāĻāĻŋ āĻŦā§āĻā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻāĻžāĻāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤, āĻ¯āĻž āĻā§āĻ°ā§āĻāĻŋāĻ¨āĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§āĨ¤
āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻžāĻ āĻžāĻŽā§āĻ¤ā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°ā§, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¤āĻžāĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻā§āĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻāĻāĻ¯āĻŧāĻ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻšāĻžāĻŦā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯ā§āĻāĻžāĻ¨ āĻĨā§āĻā§ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻāĻ°āĻ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§ (āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻžāĻāĻŦ āĻāĻ°āĻž āĻ¸āĻžāĻŽāĻ¨ā§), āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¸āĻāĻ¯ā§āĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻĻā§āĻ¯āĻŧ (āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻŦāĻž āĻ¸āĻžāĻŽāĻ¨ā§), āĻ¤āĻŦā§ āĻ¤āĻžāĻ° āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻĒāĻļāĻ¨ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¤āĻžāĻā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻā§āĻŽāĻ¨ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĻŦāĻžāĻĻā§.
āĻāĻŽāĻ°āĻž āĻĒā§āĻāĻ¨ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻāĻŋāĻĢā§āĻ°āĻ¨ā§āĻ-āĻāĻ¨ā§āĻĄ āĻšāĻ˛ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§ āĻ˛ā§āĻāĻž āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¯āĻž āĻ°āĻŋāĻ ā§āĻ¯āĻžāĻā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĄā§āĻā§āĻ˛āĻĒāĻŽā§āĻ¨ā§āĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§ āĻāĻ¤āĻŋ āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§ āĻāĻŦāĻ āĻ¸āĻšāĻāĻ¤āĻ° āĻāĻ°ā§āĨ¤ āĻāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ āĻšāĻ˛ āĻŦā§āĻ¯āĻžāĻ-āĻāĻ¨ā§āĻĄ āĻ¸āĻžāĻāĻĄā§ āĻāĻŦāĻ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻžāĻāĻ¤ā§ āĻāĻ˛āĻŽāĻžāĻ¨ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻĄā§āĻāĻž āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°āĻžāĨ¤ āĻĒā§āĻˇā§āĻ āĻžāĻāĻŋāĻ¤ā§ āĻŦāĻŋāĻāĻžāĻā§āĻ¯āĻŧ āĻ°āĻžāĻāĻāĻŋāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž-āĻ°āĻžāĻāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¤āĻŦā§ āĻāĻā§āĻ°āĻšā§āĻ° āĻŽā§āĻ˛ āĻĒā§āĻˇā§āĻ āĻžāĻāĻŋ āĻšāĻ˛ āĻŽā§āĻ˛ āĻĒā§āĻˇā§āĻ āĻž, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻ¯āĻŧā§āĻŦāĻ¸āĻā§āĻ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĨā§āĻā§ āĻ°āĻŋāĻ¯āĻŧā§āĻ˛ āĻāĻžāĻāĻŽā§ āĻĄā§āĻāĻžāĻ° āĻāĻāĻāĻŋ āĻ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°āĻŦāĻžāĻš āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻžāĻ āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻ¸ āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°ā§, āĻāĻāĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŋāĻ¤ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻāĻ¤ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻāĻā§ āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯āĻ¤āĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒāĻžāĻ āĻžāĻ¯āĻŧāĨ¤ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ āĻĒā§āĻ°āĻžāĻ¸āĻā§āĻāĻŋāĻ āĻĄā§āĻāĻž āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§, āĻ¸ā§āĻ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ° āĻ āĻŦāĻ¤āĻžāĻ° āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§ āĻ¯āĻŋāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŽāĻžāĻāĻā§āĻ°ā§āĻĢā§āĻ¨ā§ āĻāĻĨāĻž āĻŦāĻ˛ā§āĻā§āĻ¨, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ āĻ¤āĻŋāĻ¨āĻŋ āĻ¯ā§ āĻāĻŦā§āĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻļāĻŦā§āĻĻāĻā§āĻ˛āĻŋ āĻāĻā§āĻāĻžāĻ°āĻŖ āĻāĻ°ā§āĻ¨āĨ¤
āĻšāĻžāĻ˛āĻ¨āĻžāĻāĻžāĻĻ āĻĒā§āĻ°ā§āĻŦāĻžāĻāĻžāĻ¸ āĻ¸āĻš āĻšā§āĻŽ āĻĒā§āĻāĻāĻĒāĻ¸āĻāĻšāĻžāĻ°
āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻž āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻā§āĻŦāĻ˛ āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻ¤āĻžāĻ āĻŽā§āĻ˛ āĻāĻļāĻž āĻāĻŋāĻ˛ āĻĄā§āĻŽā§āĻ¤ā§, āĻ¯ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ¯āĻŧ āĻ¤āĻžāĻ°āĻž āĻā§āĻāĻžāĻŦā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻžāĻ āĻāĻ°ā§, āĻ¤āĻžāĻ°āĻž āĻā§ āĻŽāĻĄā§āĻ˛ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻ¤āĻžāĻ°āĻž āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛ā§āĻāĻŋāĻ˛āĨ¤ āĻāĻ°āĻĒāĻ°ā§ āĻāĻŋāĻ˛ āĻĄā§āĻŽā§ āĻ āĻāĻļ - āĻŦāĻŋāĻļā§āĻˇāĻā§āĻāĻ°āĻž āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻā§āĻ°āĻŽā§ āĻ°ā§āĻŽā§āĻ° āĻāĻžāĻ°āĻĒāĻžāĻļā§ āĻšā§āĻāĻā§āĻāĻŋāĻ˛ā§āĻ¨ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒāĻāĻŋ āĻĻā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°ā§āĻāĻŋāĻ˛ā§āĻ¨āĨ¤ āĻ¤āĻžāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ°āĻ āĻĒā§āĻ°āĻļā§āĻ¨ āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°ā§āĻāĻŋāĻ˛, āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻā§ āĻ¤āĻžāĻĻā§āĻ° āĻ āĻāĻļā§āĻ° āĻāĻ¤ā§āĻ¤āĻ° āĻĻāĻŋāĻ¯āĻŧā§āĻā§, āĻ¤āĻžāĻ°āĻž āĻ˛ā§āĻ¯āĻžāĻĒāĻāĻĒā§ āĻāĻ¯āĻŧā§āĻŦ āĻā§āĻĄāĻŧā§ āĻā§āĻā§, āĻāĻŦāĻ āĻ¸āĻŦāĻāĻŋāĻā§āĻ āĻāĻļāĻžāĻ¨ā§āĻ°ā§āĻĒ āĻāĻžāĻ āĻāĻ°ā§āĻā§āĨ¤
āĻāĻŽāĻžāĻā§ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻŽā§āĻ āĻāĻ°āĻ āĻāĻŋāĻ˛ $150:
- āĻ°āĻžāĻ¸ā§āĻĒāĻŦā§āĻ°āĻŋ āĻĒāĻžāĻ 3 ~ $35
- Google AIY āĻāĻ¯āĻŧā§āĻ¸ āĻŦāĻ¨āĻ¨ā§āĻ (āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ°āĻŋāĻ¸ā§āĻĒāĻŋāĻāĻžāĻ° āĻĢāĻŋ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨) ~ 15$
- āĻāĻ¨ā§āĻā§āĻ˛ NCS 2 ~ 100$
āĻā§āĻāĻžāĻŦā§ āĻāĻ¨ā§āĻ¨āĻ¤āĻŋ āĻāĻ°āĻŦā§āĻ¨:
- āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ - āĻāĻ˛ā§āĻŽā§āĻ˛ā§āĻāĻžāĻŦā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻĒāĻžāĻ ā§āĻ¯ āĻĒāĻĄāĻŧāĻ¤ā§ āĻŦāĻ˛ā§āĻ¨
- āĻāĻ°āĻ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻŽāĻĄā§āĻ˛ āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨: āĻāĻĒāĻ¨āĻŋ āĻāĻ¯āĻŧā§āĻ¸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛āĻŋāĻā§āĻ āĻāĻŦāĻ āĻŦāĻ¯āĻŧāĻ¸ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
- āĻāĻāĻ āĻ¸āĻžāĻĨā§ āĻ§ā§āĻŦāĻ¨āĻŋāĻ¤ āĻāĻŖā§āĻ āĻ¸ā§āĻŦāĻ° āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°ā§āĻ¨ (āĻĄāĻžāĻ¯āĻŧāĻžāĻ°āĻžāĻāĻā§āĻļāĻ¨)
āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛:
https://github.com/vladimirwest/OpenEMO
āĻā§āĻ˛āĻžāĻ¨ā§āĻ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻā§āĻļāĻŋāĻāĻĒāĻ¸āĻāĻšāĻžāĻ°ā§, āĻāĻŽāĻŋ āĻāĻ¯āĻŧā§āĻāĻ āĻāĻŦāĻ āĻ āĻāĻļāĻā§āĻ°āĻšāĻŖāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ āĻāĻžāĻ¨āĻžāĻ¤ā§ āĻāĻžāĻāĨ¤ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĻāĻ˛ā§āĻ° āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤āĻāĻžāĻŦā§ āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻā§āĻˇāĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻŋ āĻĒāĻŖā§āĻ¯ āĻāĻŦāĻ āĻŦāĻŋāĻāĻžāĻļā§ āĻ¨āĻŋāĻŽāĻā§āĻāĻŋāĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤ āĻ āĻāĻŋāĻā§āĻāĻ¤āĻž āĻāĻŋāĻ˛āĨ¤ āĻāĻŽāĻŋ āĻāĻļāĻž āĻāĻ°āĻŋ āĻ¯ā§ āĻāĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻā§āĻ˛āĻŋ āĻ¸āĻš āĻ āĻā§āĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻ°āĻ āĻŦā§āĻļāĻŋ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻāĻā§āĻ¨ā§āĻ āĻ āĻ¨ā§āĻˇā§āĻ āĻŋāĻ¤ āĻšāĻŦā§āĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com