|
|
|
@ -1,19 +1,31 @@
|
|
|
|
|
images=$(wildcard images/*.jpg)
|
|
|
|
|
# creates: images/001.jpg images/002.jpg images/000.jpg
|
|
|
|
|
# TO DO #
|
|
|
|
|
# * If ocr (tesseract rule) has been performed do repeate it
|
|
|
|
|
# * document depencies
|
|
|
|
|
# * remove tmp files
|
|
|
|
|
|
|
|
|
|
dir_ocr:="ocr"
|
|
|
|
|
images=$(wildcard images/*.jpg)
|
|
|
|
|
output_ocr:=$(dir_ocr)/output.txt
|
|
|
|
|
tmpfile:= $(shell mktemp)
|
|
|
|
|
color_w:="\033[0;29m" # add color to output
|
|
|
|
|
color_r:="\033[0;31m" # echo $(color_r) something
|
|
|
|
|
color_g:="\033[0;32m"
|
|
|
|
|
color_b:="\033[0;34m"
|
|
|
|
|
space:= $(empty) $(empty)
|
|
|
|
|
newline:= '\n'
|
|
|
|
|
listimgs:= $(subst $(space),$(newline),$(images))0
|
|
|
|
|
listimgs:= $(subst $(space),$(newline),$(images)) # list of the images, with one filename on each line $(subst $(delimitator),$(replacement),$(list))
|
|
|
|
|
OS:= $(shell uname)
|
|
|
|
|
ocroutput:= ocr/output.txt
|
|
|
|
|
txtfiles:= $(wildcard ocr/*.txt)
|
|
|
|
|
# subst is a way to do string replacements, it works like this: $(subst $(delimitator),$(replacement),$(list))
|
|
|
|
|
# it's used here to make a list of the images, with one filename on each line
|
|
|
|
|
|
|
|
|
|
color_w:="\033[0;29m" # Colors
|
|
|
|
|
color_r:="\033[0;31m"
|
|
|
|
|
color_g:="\033[0;32m"
|
|
|
|
|
color_b:="\033[0;34m"
|
|
|
|
|
# add color to output ie @echo $(color_r) something
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##### ADMINISTRATIVE RECIPES
|
|
|
|
|
|
|
|
|
|
dirs: # create the directories for the working structures
|
|
|
|
|
@mkdir -p images # scanned image dir
|
|
|
|
|
@mkdir -p output # outputs dir
|
|
|
|
|
@echo $(color_r)'Directories made'
|
|
|
|
|
|
|
|
|
|
rmtmp:
|
|
|
|
|
rm $(tmpfile)
|
|
|
|
@ -23,47 +35,51 @@ ifeq ($(OS),Darwin)
|
|
|
|
|
@echo $(OS)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
dirs: # create the directories for the working structures
|
|
|
|
|
mkdir images # scanned image dir
|
|
|
|
|
mkdir output # outputs dir
|
|
|
|
|
@echo $(color_r)'Directories made'
|
|
|
|
|
|
|
|
|
|
##### POST-PROCESSING RECIPES
|
|
|
|
|
|
|
|
|
|
tesseract:
|
|
|
|
|
echo $(listtxt) > output/list.txt
|
|
|
|
|
tesseract ocr/list.txt $(basename $(ocroutput))
|
|
|
|
|
echo $(listimgs) > ocr/list.txt
|
|
|
|
|
tesseract ocr/list.txt $(basename $(output_ocr))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##### OUTPUT GENERATION RECIPES
|
|
|
|
|
|
|
|
|
|
myscript: tesseract
|
|
|
|
|
cat $(outputocr) | python3 src/myscript.py > output/a-new-file.txt
|
|
|
|
|
cat $(output_ocr) | python3 src/myscript.py > output/a-new-file.txt
|
|
|
|
|
|
|
|
|
|
wordtagger: tesseract
|
|
|
|
|
|
|
|
|
|
cat $(outputocr) | python3 src/wordtagger.py > output/tagged-words.txt
|
|
|
|
|
cat $(output_ocr) | python3 src/wordtagger.py > output/tagged-words.txt
|
|
|
|
|
# DEPENDENCY: nltk, nltk: 'averaged_perceptron_tagger'
|
|
|
|
|
# $ python 3
|
|
|
|
|
# >>> import nltk
|
|
|
|
|
# >>> nltk.download('averaged_perceptron_tagger')
|
|
|
|
|
|
|
|
|
|
talktochatbot: tesseract
|
|
|
|
|
cat $(outputocr) | python3 src/textbotconversation.py
|
|
|
|
|
cat $(output_ocr) | python3 src/textbotconversation.py
|
|
|
|
|
# depency: chatterbot
|
|
|
|
|
|
|
|
|
|
n+7: tesseract
|
|
|
|
|
cat $(outputocr) | python3 src/n_7.py > output/blah.txt
|
|
|
|
|
cat $(output_ocr) | python3 src/n_7.py > output/n7.txt
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
visualization: $(images) $(tmpfile) #requires mplayer
|
|
|
|
|
@echo $(tmpfile)
|
|
|
|
|
for i in $(images); do \
|
|
|
|
|
cat $$i >> $(tmpfile); \
|
|
|
|
|
done;
|
|
|
|
|
|
|
|
|
|
ifeq ($(OS),Darwin)
|
|
|
|
|
cat $(tmpfile) | mplayer -sws 4 -zoom -vf dsize=720:720 -demuxer rawvideo -rawvideo w=56:h=64:i420:fps=25 -;
|
|
|
|
|
else
|
|
|
|
|
cat $(tmpfile) | mplayer -vo x11 -sws 4 -zoom -vf dsize=720:720 -demuxer rawvideo -rawvideo w=50:h=50:i420:fps=25 -;
|
|
|
|
|
endif
|
|
|
|
|
# ifeq ($(shell uname), Linux)
|
|
|
|
|
# cat $(tmpfile) | mplayer -vo x11 -sws 4 -zoom -vf dsize=720:720 -demuxer rawvideo -rawvideo w=50:h=50:i420:fps=25 -;\
|
|
|
|
|
|
|
|
|
|
tts: # Text-to-speech
|
|
|
|
|
cat $(output_ocr) | espeak
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# ** Makefile Syntax notes **
|
|
|
|
|
# @ preceding command tells make not to print the command being executed
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
tts:
|
|
|
|
|
cat $(ocroutput) | espeak
|
|
|
|
|