Pregunta

Quiero escribir un software básico de reconocimiento de voz que puede convertir la voz en texto. Yo quería saber qué idioma es el más adecuado para escribir un software de este tipo. Java es adecuado para este trabajo?

Edit: Gracias a todos por las respuestas. Quiero construir una herramienta para un proyecto de la universidad. No quiero escribir desde cero. Sólo quiero hacer una demostración del poder de reconocimiento de voz. La herramienta sólo debe escribir lo que dice un usuario en un editor de texto como el Bloc de notas. No tiene que ser muy precisa. Sólo quiero experimentar y aprender los diversos algoritmos detrás de reconocimiento de voz como encuentre este campo muy interesante.

Gracias, Deepak

¿Fue útil?

Solución

Java puede ser adecuado para una interfaz a ella, pero requiere el reconocimiento de voz ronco serio prima. Estaría la elección de un lenguaje compilado cerrar-a-la-metal como C para el motor de reconocimiento real.

Esto no es algo para tomarse a la ligera, por cierto. Hay una gran cantidad de teoría tendrá que aprender incluso antes de empezar. Yo mismo, autorizaría uno de los motores existentes, si es posible, y concentrarse en la construcción de un producto decente a su alrededor.

Eso es si su intención es construir un producto. Si lo que desea es experimentar, por todos los medios escribir el suyo propio. Será divertido (hasta cierto punto: -).

Otros consejos

Mis estudiantes están utilizando Sphinx . Está escrito en Java (un puerto de C ++, creo). Puede que no sea adecuado para lo que quiere (creo que se necesita para crear su propio diccionario) pero vale la pena echarle un vistazo.

Estoy de acuerdo con Pax que esto es potencialmente bastante un gran proyecto, y que la solución más práctica es probable que acaba de licenciar un motor existente.

Si el alcance de lo que quieres hacer es simplemente distinguen entre unos pocos enunciados anteriormente conocidos es posible, es un proyecto significativamente más pequeño, pero aún considerable.

Pero ... si usted decide que realmente realmente realmente quiere empezar a desarrollar su propio, no veo una razón para no utilizar Java. La idea de que "C es más rápido" es en gran parte un mito (o basada en productos fuera de la información actualizada).

A de acuerdo con casi todo Pax dijo, así que voy a ser contrario y argumentar a favor de lo contrario. La sabiduría convencional es que el reconocimiento de voz "requiere ronco serio en bruto" y puede ser debido a que esto es cierto.

Pero también puede ser que todo el mundo cree que debido a que es como se ha hecho siempre. Argumentando el hecho de que el cerebro humano no do enormes cantidades de datos de fuerza bruta batido a reconocer el habla, yo sugeriría que existen algoritmos de extracción de características inteligentes para hacer el trabajo más de manera más eficiente.

Si ese es el caso, y si usted busca encontrar un algoritmo tal, un lenguaje de alto nivel puede ser más adecuado para la tarea. Todo lo que desates en la eficiencia que va a hacer y más en expresividad algorítmica.

Dicho esto, probablemente tenga razón.

Creo que Java puede ser una buena opción, todo depende de cómo va a recibir la entrada. Hay algunas librerias agradables para los sonidos en Java.

El idioma no va a ser el problema, ya que será una cuestión de reconocer los patrones. Si Java es el lenguaje que está más familiarizado con, yo lo uso.

Turing completa, de modo que puede manejar todos los trabajos de programación. Tanto si desea para hacer algo en Java es totalmente de usted.

Hemos tenido un éxito moderado con el marco Shynx escrito en Java, pero el duro trabajo real radica en la comprensión de los algoritmos y matemáticas involucradas en el área y luego en el motor de puesta a punto a sus necesidades particulares.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top