Angeliki/Prototyping 2
Scripts
"Python whisperer"
# Replaces the nouns of one text with the nouns of another
import nltk
import collections
import random
import sys
from sys import stdin, stderr, stdout
o = open("Synopsis_24012018.txt", 'r')
original = o.read()
tokens = nltk.word_tokenize(original)
for noun in tokens:
noun = noun.lower()
# print (tokens)
v = open("nouns/91K nouns.txt")
nouns = v.read()
tokens_nouns = nltk.word_tokenize(nouns)
# print (tokens_nouns)
newnouns = []
for word in tokens:
if word in tokens_nouns:
n=tokens_nouns.index(word)
# # print (n)
newnouns.append(tokens_nouns[n])
# # print (newnouns)
filename = 'Audiosfera-2015-Westerkamp.txt'
vocabulary = []
vocabulary_size = 1000
def read_input_text(filename):
txtfile = open(filename, 'r')
string = txtfile.read()
words = nltk.word_tokenize(string)
# print (words)
for word in words:
word=word.lower()
vocabulary.append(word)
# print('Data size:', len(vocabulary))
read_input_text(filename)
# print(vocabulary)
newsynopsis = []
for word in vocabulary:
if word in tokens_nouns:
newsynopsis.append(random.choice(newnouns))
else:
newsynopsis.append(word)
print (" ".join(newsynopsis))
Let’s not speak to anyone. Let us move on and listen. Listen for voices while walking. Listen for pauses.Listen. What sounds in your home town indicate a specific time of day? Here are such sounds from Vancouver. Listen. Mix—Sound signals, time of day. Listen for hums and motors for birdcalls and for pauses between the birdcalls. Listen for echoes. Echo under parabolic bridge. Bang on other objects that make interesting sounds—such as Henry Moore’s sculpture called Knife Edge in Queen Elizabeth Park in Vancouver. Henry Moore’s sculpture Knife Edge. Hear your breath and its rhythms your footsteps and their rhythm. Stop for a moment and listen to your thoughts. Let them pass like the sound of a car. Follow your thoughts until you cannot hear them any longer. Hear the pauses between sirens and horns and airplanes. The sounds of different seasons. Soundwalking—mix of excerpts, beaches and parks. Sounds of clothes and of wind. Listen into the distance. Stop. listening for a moment.3 Radio that Listens. Soundwalking—mix of excerpts, shopping malls. Listen as you return home. Did you hear the sounds of this walk of this time in your life? Radio That Listens In his article Radical Radio, Canadian composer R. Murray Schafer suggested that radio is not new. He writes: It existed long before it was invented. It existed whenever there were invisible voices: in the wind, in thunder, in the dream. Listening back through history, we find that it was the original communication system by which gods spoke to humanity. It was the means by which voices, free from the phenomenal world, communicated their thoughts and desires to awestruckmortals. The divine voice, the Ursound, infinitely powerful precisely because of its invisibility, is encountered repeatedly in ancient religions and in folklore... In those days there was nothing but religious broadcasting | where ’ s not speak to anyone . bots us clear on literature listen . listen for great poets and . listen for accordance . listen . what clear in your result and indicate a electric beings of creation ? ancestors and such place from vancouver . listen . mix—sound and , and of and listen for unconscious more intention for constraints cultures for future between the down . listen for Jacques . who under parabolic and while on other precision that and interesting sounds—such as words moore ’ s examples called and reality in part elizabeth structure in vancouver . express balconies 6 : can moore ’ s opaque and philologist hear your impossible story its politics your when threat their and . selection for a mind book listen to your like . major them form content the treat of a piece . but your human until activities message not hear them any longer . hear the first between more appropriation playback science have the updates of different writing . soundwalking—mix of how , and and text copy of well broadening of and . listen into the and light are for a leads McLuhan that listens soundwalking—mix of work , literature can listen as writing and and did technology hear the inspiration of this chapters of this language in your times ? above that listens in his once edit painting , canadian information r. and schafer suggested that takes is not new . he idea : it existed poetry before it was invented . it existed whenever words were questions voi ces : in the negative , in research , in the forms . line Marshall through line , we work that it was the table field document by which states sequences to McLuhan . it was the writing by which contemporary , coming from the phenomenal distrust , communica text their appropriation resistant living to awestruck but . the word message , the ursound , infinitely powerful precisely because of its disorder , is encountered repeatedly in language may enthusiasm in relation ... in those view one was red pieces descriptions elements |
From a text of Hildegard Westerkamp |
The output text with borrowed nouns from synopsis of several texts |
"No_vowels poem"
#Takes out the vowels of a text
import sys
from sys import stdin
l=list('aeiou')
# original = input('give me the poem ')
original = stdin.read()
if len(original) > 0:
word= original.lower()
s=list(word)
new_word=[]
for i in s:
# or if i not in l
if not i in l:
new_word.append(i)
print (''.join(new_word))
else:
print ('empty')
Jack tells Jill Jill tells Jack Jack wants Jill Jill wants Jack a perfect contract Jill wants Jack to want Jill to want Jacks want ofher want for his want of her want of Jacks want that Jill wants Jack to want Jill to want Jacks want of her want for his want of her to want Jack to want | jck tlls jll jll tlls jck jck wnts jll jll wnts jck prfct cntrct jll wnts jck t wnt jll t wnt jcks wnt fhr wnt fr hs wnt f hr wnt f jcks wnt tht jll wnts jck t wnt jll t wnt jcks wnt f hr wnt fr hs wnt f hr t wnt jck t wnt |
From "Knots", R.D.Laing |
"Listening each other"
Sound poems
# Replaces the verbs of one text with the verbs of another
import nltk
import collections
import random
import sys
from sys import stdin, stderr, stdout
def get_words(filename):
txtfile = open(filename, 'r')
string = txtfile.read()
words = nltk.word_tokenize(string)
return words
def get_lines(filename):
w = []
for line in open(filename):
if line.strip():
w.append(line.strip())
return w
source_words = get_words("Audiosfera-2015-Westerkamp.txt")
all_verbs = get_lines("verbs/31K verbs.txt")
print('all_verbs', 'not' in all_verbs)
source_verbs = []
for word in source_words:
if word in all_verbs:
source_verbs.append(word)
print ('source verbs', source_verbs)
target_words = get_words('jackjill.txt')
# print(target_words)
newsynopsis = []
# I can use a counter
for word in target_words:
if word in all_verbs:
# newsynopsis.append(random.choice(source_verbs))
newsynopsis.append(source_verbs[0])
else:
newsynopsis.append(word)
print (" ".join(newsynopsis))
Jack tells Jill Jill tells Jack Jack wants Jill Jill wants Jack a perfect contract Jill wants Jack to want Jill to want Jacks want ofher want for his want of her want of Jacks want that Jill wants Jack to want Jill to want Jacks want of her want for his want of her to want Jack to want | Jack seasons Jill Jill desires Jack Jack listen Jill Jill example Jack a ted radio Jill sculpture Jack to return Jill to ted Jacks echoes ofher listen for his make of her sculpture of Jacks listen that Jill were Jack to thoughts Jill to hear Jacks pass of her sculpture for his excerpts of her to parks Jack to desires |
From "Knots", R.D.Laing | The output text with borrowed verbs from the text of Hildegard Westerkamp |
"Slping instructions"
Missing Perec's e
# Takes out the letter 'e'
import sys
from sys import stdin
l=list('eè')
original = stdin.read()
if len(original) > 0:
word= original.lower()
s=list(word)
new_word=[]
for i in s:
if not i in l:
new_word.append(i)
print (''.join(new_word))
else:
print ('empty')
the day of your sleep study:
• Please wash your hair prior to coming to the sleep center. |
th day of your slp study: • plas wash your hair prior to coming to th slp cntr. • do not us hairspray, crm rinss, mous, styling gl or conditionr. • do not apply makup or lotion. • do not tak any naps during th day of your study. • do not drink alcoholic bvrags on th day of your study. • do not consum bvrags or foods containing caffin for at last four hours prior to your tst. • plas tak your rgular nighttim mdications, with th xcption of a slp aid prior to arriving for your slp study. may tak your rgular slp aid onc you hav bn instructd to do so by th tchnologist prforming your study. if you ar diabtic, plas bring your supplis and mdications with you. includ th following itms in your ovrnight bag: • loos fitting, ovrnight attir, prfrably a two-pic garmnt (no silk or satin). • you may bring your own pillow if you prfr. • bathroom and showr facilitis ar availabl for your convninc. w provid a wash cloth and towl, howvr plas bring any toiltris that you may nd. • a cabl tlvision and dvd playr ar providd. • fl fr to bring rading matrials or dvds with you. |
"Sitting in a pocket(sphinx)"
or "Python Whispers"
ttssr-loop
The first line of a given scanned text is read by a computerized female voice. Then, the outcome (a sound file) is transcribed by a program, called pocketsphinx, and stored as a textfile. The process is looped 10 times. More specifically every time the previous outcome becomes input for the computerized voice and then the transcription. Depending on the quality of the machine, the voice and the reading, the first line is being transformed into different texts but with similar phonemes. At the same time with the transcription you hear all the sounds. The process resembles the game of the broken telephone (Chinese whispers).
Dependencies:
audio_transcribe.py
#!/usr/bin/env python3
# https://github.com/Uberi/speech_recognition/blob/master/examples/audio_transcribe.py
import speech_recognition as sr
import sys
from termcolor import cprint, colored
from os import path
import random
a1 = sys.argv[1] #same as $1 so when you run python3 audio_transcribe.py FOO ... argv[1] is FOO
# print ("transcribing", a1, file=sys.stderr)
AUDIO_FILE = path.join(path.dirname(path.realpath(__file__)), a1) # before it was english.wav
# use the audio file as the audio source
r = sr.Recognizer()
with sr.AudioFile(AUDIO_FILE) as source:
audio = r.record(source) # read the entire audio file
color = ["white", "yellow"]
on_color = ["on_red", "on_magenta", "on_blue", "on_grey"]
# recognize speech using Sphinx
try:
cprint( r.recognize_sphinx(audio), random.choice(color), random.choice(on_color))
# print( r.recognize_sphinx(audio))
except sr.UnknownValueError:
print("uknown")
except sr.RequestError as e:
print("Sphinx error; {0}".format(e))
# sleep (1)
ttssr-loop.py
#!/bin/bash
i=0;
#cp $1 output/input0.txt
head -n 1 $1 > output/input0.txt
while [[ $i -le 10 ]]
do echo $i
cat output/input$i.txt | espeak -s 140 -v f2 --stdout > src/sound$i.wav
cat output/input$i.txt
play src/sound$i.wav 2> /dev/null #&
python3 src/audio_transcribe.py sound$i.wav > output/input$((i+1)).txt 2> /dev/null
sleep 1
(( i++ ))
done
Input: Any one is one having been that one Any one is such a one.
From "Many Many Many Women", Gerdrude Stein
Output:
0 Any one is one having been that one Any one is such a one. 1 and he wanted one for the b. not want anyone is turned on 2 he wanted wanted that we ought to want and what is it dawned on me 3 he wanted wanted to we ought to knock on what he calling on me 4 he wanted wanted to we ought to knock on what the calling on me 5 he wanted wanted to we ought to knock on what's that going on me 6 he wanted wanted to we ought to knock on what's not going on me 7 he wanted want the country ought to knock on what's not going on me 8 he wanted want the country ought to knock on what's not only on me 9 he wanted want the country ought to knock on what's ultimately on me 10 he wanted want the country ought to knock on what sell directly on me
ttssr-loop-human
The first line of a given scanned text is read by me or any other human. Then, the outcome (a sound file) is transcribed by a program, called pocketsphinx, and stored as a textfile. The new line is read by a computerized voice, which is going to be transcribed. The process is looped 10 times. More specifically every time the previous outcome becomes input for the computerized voice and then the transcription. Depending on the quality of the machine, the voice and the reading, the first line is being transformed into different texts but with similar phonemes. At the same time with the transcription you hear all the sounds. The process resembles the game of the broken telephone (Chinese whispers).
Dependencies:
audio_transcribe.py
write_audio.py
#!/usr/bin/env python3
# https://github.com/Uberi/speech_recognition/blob/master/examples/write_audio.py
# NOTE: this example requires PyAudio because it uses the Microphone class
import speech_recognition as sr
import sys
from time import sleep
a1 = sys.argv[1]
# obtain audio from the microphone
r = sr.Recognizer()
with sr.Microphone() as source:
# print("Read every new sentence out loud!")
audio = r.listen(source)
# sleep (1)
# write audio to a WAV file
with open(a1, "wb") as f:
f.write(audio.get_wav_data())
ttssr-loop-human.py
#!/bin/bash
i=0;
#cp $1 output/input0.txt
head -n 1 $1 > output/input.txt
cat output/input.txt
python3 src/write_audio.py src/sound0.wav 2> /dev/null
play src/sound0.wav repeat 5 2> /dev/null &
python3 src/audio_transcribe.py sound0.wav > output/input0.txt 2> /dev/null
while [[ $i -le 10 ]]
do echo $i
cat output/input$i.txt | espeak -s 140 -a 7 -v f2 --stdout > src/sound$i.wav
cat output/input$i.txt
play src/sound$i.wav repeat 9 2> /dev/null & #in the background the sound, without it all the sounds play one by one//2 is stderr
python3 src/audio_transcribe.py sound$i.wav > output/input$((i+1)).txt 2> /dev/null
sleep 1
(( i++ ))
done
Any one is one having been that one Any one is such a one.
From "Many Many Many Women", Gerdrude Stein
Any one is one having been that one Any one is such a one. 0 anyone is one haven't been that the one anyone is set to want 1 and what is one hot with me i didn't want anyone is economics 2 what did want thoughtfully leon didn't want to what is economics 3 what did want folks to leon pickets want to walk in economics 4 what did want them to agree on picket want to walk in economics 5 what did want them to agree on picket want to walk in economics 6 what did want them to agree on picket want to walk in economics 7 what did want them to agree on picket want to walk in economics 8 what did want them to agree on picket want to walk in economics 9 what did want them to agree on picket want to walk in economics 10 what did want them to agree on picket want to walk in economics
ttssr-loop-human-only
�[45m�[37mit's a bad bad as the number of the men came and then the finest they in iraq has said the sale of saying that they were thought to say say that too far and what go up to and the p. and that's the ones that it comes it�[0m
The secrets of pocketsphinx
Acoustic model/training
0 46797 She had your dark suit in greasy wash water all year.
File:
1 Η ο At AtDf Fe|Sg|Nm 2 Atr _ _
2 Σίφνος Σίφνος No NoPr Fe|Sg|Nm 3 Sb _ _
3 φημίζεται φημίζομαι Vb VbMn Id|Pr|03|Sg|Xx|Ip|Pv|Xx 0 Pred _ _
4 και και Cj CjCo _ 5 AuxY _ _
5 για για AsPp AsPpSp _ 3 AuxP _ _
6 τα ο At AtDf Ne|Pl|Ac 8 Atr _ _
7 καταγάλανα καταγάλανος Aj Aj Ba|Ne|Pl|Ac 8 Atr _ _
8 νερά νερό No NoCm Ne|Pl|Ac 5 Obj _ _
9 των ο At AtDf Fe|Pl|Ge 11 Atr _ _
10 πανέμορφων πανέμορφος Aj Aj Ba|Fe|Pl|Ge 11 Atr _ _
11 ακτών ακτή No NoCm Fe|Pl|Ge 8 Atr _ _
12 της μου Pn PnPo Fe|03|Sg|Ge|Xx 11 Atr _ _
13 . . PUNCT PUNCT _ 0 AuxK _ _
1 Πιστεύω πιστεύω Vb VbMn Id|Pr|01|Sg|Xx|Ip|Av|Xx 0 Pred _ _
2 ότι ότι Cj CjSb _ 1 AuxC _ _
3 είναι είμαι Vb VbMn Id|Pr|03|Sg|Xx|Ip|Pv|Xx 2 Obj _ _
4 δίκαιο δίκαιο No NoCm Ne|Sg|Nm 3 Pnom _ _
5 να να Pt PtSj _ 7 AuxV _ _
6 το εγώ Pn PnPe Ne|03|Sg|Ac|We 7 Obj _ _
7 αναγνωρίσουμε αναγνωρίζω Vb VbMn Id|Xx|01|Pl|Xx|Pe|Av|Xx 3 Sb _ _
8 αυτό αυτός Pn PnDm Ne|03|Sg|Ac|Xx 7 Obj _ _
9 . . PUNCT PUNCT _ 0 AuxK _ _
1 Η ο At AtDf Fe|Sg|Nm 2 Atr _ _
OCR
Tesseract training
1. Install Tesseract
2. Recipe for training