Commit 6a90b476 authored by Nadir Dalla Pozza's avatar Nadir Dalla Pozza
Browse files

Update.

parent e6c71421
No preview for this file type
BERIO060
tsh: 84 tshp: 90
Tue Jun 28 17:34:43 2022
Processing area found!
Saved frames are: 230
Processing elapsed time: 0:56
BERIO058
tsh: 82 tshp: 92
Thu Aug 25 10:26:50 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
CAPSTAN: Positive is best.
Processing areas found!
BERIO060
tsh: 78 tshp: 92
Thu Aug 25 10:26:59 2022
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 10:22:08 2022
Processing area found!
tsh: 82 tshp: 92
Thu Aug 25 10:31:50 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
CAPSTAN: Positive is best.
Processing areas found!
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 10:24:51 2022
Processing area found!
BERIO060
tsh: 78 tshp: 92
Thu Aug 25 10:31:56 2022
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 10:25:49 2022
Processing area found!
tsh: 82 tshp: 92
Thu Aug 25 10:33:10 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
CAPSTAN: Positive is best.
Processing areas found!
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 10:28:21 2022
Processing area found!
tsh: 82 tshp: 92
Thu Aug 25 10:34:37 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
CAPSTAN: Positive is best.
Processing areas found!
Saved frames are: 153
Processing elapsed time: 3:4
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 10:45:25 2022
Processing area found!
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 10:47:18 2022
Processing area found!
BERIO060
tsh: 78 tshp: 92
Thu Aug 25 10:37:45 2022
READING HEAD: Positive is the only choice.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 59
Processing elapsed time: 0:59
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 10:59:22 2022
Processing area found!
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 11:02:03 2022
Processing area found!
BERIO236
tsh: 78 tshp: 92
Thu Aug 25 10:38:56 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 74
Processing elapsed time: 1:13
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 11:06:26 2022
Processing area found!
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 11:11:34 2022
Processing area found!
BERIO297
tsh: 82 tshp: 92
Thu Aug 25 10:40:18 2022
READING HEAD: Positive is the only choice.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 64
Processing elapsed time: 0:22
BERIO319
tsh: 82 tshp: 92
Thu Aug 25 10:40:46 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 57
Processing elapsed time: 0:12
BERIO333
tsh: 82 tshp: 92
Thu Aug 25 10:41:06 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 3031
Processing elapsed time: 1:32
BERIO415
tsh: 78 tshp: 92
Thu Aug 25 10:42:40 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 4777
Processing elapsed time: 2:28
LNONO044
tsh: 82 tshp: 92
Thu Aug 25 10:45:24 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 71
Processing elapsed time: 1:24
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 11:14:03 2022
Processing area found!
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 11:15:45 2022
Processing area found!
tsh: 82 tshp: 93
Thu Aug 25 10:51:09 2022
BERIO060
tsh: 78 tshp: 93
Thu Aug 25 10:51:09 2022
BERIO333
tsh: 92 tshp: 93
Thu Aug 25 10:51:16 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO415
tsh: 88 tshp: 93
Thu Aug 25 10:51:25 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO333
tsh: 97 tshp: 93
Thu Aug 25 10:51:44 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 449
Processing elapsed time: 1:3
BERIO415
tsh: 93 tshp: 93
Thu Aug 25 10:52:49 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO333
tsh: 102 tshp: 93
Thu Aug 25 10:55:09 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 10:55:24 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 369
Processing elapsed time: 2:20
BERIO333
tsh: 102 tshp: 93
Thu Aug 25 10:58:32 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO415
tsh: 94 tshp: 93
Thu Aug 25 10:58:40 2022
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 10:58:43 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 267
Processing elapsed time: 1:0
BERIO415
tsh: 94 tshp: 93
Thu Aug 25 10:59:45 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 4735
Processing elapsed time: 2:29
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:20:19 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 267
Processing elapsed time: 0:56
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:21:47 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 267
Processing elapsed time: 0:55
BERIO415
tsh: 96 tshp: 93
Thu Aug 25 11:22:45 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:26:45 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 253
Processing elapsed time: 1:8
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 11:27:56 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:29:06 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 253
Processing elapsed time: 0:55
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 11:30:03 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 271
Processing elapsed time: 2:24
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:33:02 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 11:33:23 2022
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:34:17 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 11:35:05 2022
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:35:33 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 11:35:52 2022
BERIO333
tsh: 98 tshp: 93
Thu Aug 25 11:36:11 2022
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 11:36:12 2022
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 11:17:17 2022
Processing area found!
Saved frames are: 124
Processing elapsed time: 2:26
tsh: 82 tshp: 93
Thu Aug 25 11:36:23 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is best.
Processing areas found!
Saved frames are: 153
Processing elapsed time: 2:32
BERIO060
tsh: 84 tshp: 90
Wed Jun 29 11:20:47 2022
Processing area found!
Saved frames are: 230
Processing elapsed time: 0:52
tsh: 78 tshp: 93
Thu Aug 25 11:39:01 2022
READING HEAD: Positive is the only choice.
TAPE: Negative is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 55
Processing elapsed time: 0:55
BERIO236
tsh: 84 tshp: 90
Wed Jun 29 11:21:56 2022
Processing area found!
Saved frames are: 71
Processing elapsed time: 0:49
tsh: 78 tshp: 93
Thu Aug 25 11:40:08 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 68
Processing elapsed time: 0:58
BERIO297
tsh: 84 tshp: 90
Wed Jun 29 11:23:00 2022
Processing area found!
Saved frames are: 21
Processing elapsed time: 0:10
tsh: 82 tshp: 93
Thu Aug 25 11:41:14 2022
READING HEAD: Positive is the only choice.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 37
Processing elapsed time: 0:19
BERIO319
tsh: 84 tshp: 90
Wed Jun 29 11:23:32 2022
Processing area found!
Saved frames are: 23
Processing elapsed time: 0:6
tsh: 82 tshp: 93
Thu Aug 25 11:41:38 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 30
Processing elapsed time: 0:12
BERIO333
tsh: 84 tshp: 90
Wed Jun 29 11:23:51 2022
Processing area found!
Saved frames are: 361
Processing elapsed time: 0:43
tsh: 98 tshp: 93
Thu Aug 25 11:41:58 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 255
Processing elapsed time: 0:53
BERIO415
tsh: 84 tshp: 90
Wed Jun 29 11:24:52 2022
Processing area found!
Saved frames are: 227
Processing elapsed time: 2:9
tsh: 98 tshp: 93
Thu Aug 25 11:42:55 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 369
Processing elapsed time: 2:26
LNONO044
tsh: 84 tshp: 90
Wed Jun 29 11:27:47 2022
Processing area found!
Saved frames are: 473
Processing elapsed time: 1:18
tsh: 82 tshp: 93
Thu Aug 25 11:45:35 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 72
Processing elapsed time: 1:26
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 14:19:16 2022
Processing area found!
tsh: 83 tshp: 93
Thu Aug 25 11:53:44 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is best.
Processing areas found!
Saved frames are: 153
Processing elapsed time: 2:35
BERIO058
tsh: 84 tshp: 90
Wed Jun 29 15:33:31 2022
Processing area found!
BERIO060
tsh: 84 tshp: 90
Tue Jul 5 16:09:37 2022
Processing area found!
tsh: 77 tshp: 93
Thu Aug 25 11:56:23 2022
READING HEAD: Positive is the only choice.
TAPE: Negative is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 56
Processing elapsed time: 1:1
BERIO058
tsh: 84 tshp: 90
Tue Jul 5 16:42:18 2022
Processing area found!
LNONO044
tsh: 84 tshp: 90
Tue Jul 5 17:33:00 2022
Processing area found!
BERIO236
tsh: 77 tshp: 93
Thu Aug 25 11:57:36 2022
READING HEAD: Positive is best.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 68
Processing elapsed time: 1:2
BERIO058
tsh: 84 tshp: 90
Wed Aug 24 10:14:32 2022
Processing area not found.
BERIO058
tsh: 84 tshp: 90
Wed Aug 24 10:15:05 2022
Processing area found!
BERIO060
tsh: 80 tshp: 90
Wed Aug 24 10:17:36 2022
Processing area found!
BERIO297
tsh: 83 tshp: 93
Thu Aug 25 11:58:48 2022
READING HEAD: Positive is the only choice.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 37
Processing elapsed time: 0:20
BERIO060
tsh: 50 tshp: 90
Wed Aug 24 10:18:09 2022
Processing area found!
BERIO060
tsh: 4 tshp: 90
Wed Aug 24 10:18:46 2022
Processing area found!
BERIO319
tsh: 83 tshp: 93
Thu Aug 25 11:59:13 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 30
Processing elapsed time: 0:14
BERIO060
tsh: 98 tshp: 90
Wed Aug 24 10:19:25 2022
Processing area found!
BERIO060
tsh: 1 tshp: 90
Wed Aug 24 10:19:51 2022
Processing area found!
Saved frames are: 2
Processing elapsed time: 0:50
BERIO333
tsh: 93 tshp: 93
Thu Aug 25 11:59:34 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 1643
Processing elapsed time: 1:14
BERIO060
tsh: 80 tshp: 90
Wed Aug 24 10:29:02 2022
BERIO415
tsh: 96 tshp: 93
Thu Aug 25 12:00:51 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 55
Processing elapsed time: 0:52
Saved frames are: 4449
Processing elapsed time: 2:26
BERIO060
tsh: 80 tshp: 90
Wed Aug 24 11:12:16 2022
LNONO044
tsh: 83 tshp: 93
Thu Aug 25 12:03:33 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is best.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 55
Processing elapsed time: 0:57
Saved frames are: 72
Processing elapsed time: 1:27
BERIO060
tsh: 80 tshp: 50
Wed Aug 24 11:14:12 2022
BERIO333
tsh: 96 tshp: 93
Thu Aug 25 12:05:16 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 55
Processing elapsed time: 0:57
Saved frames are: 642
Processing elapsed time: 0:55
BERIO060
tsh: 80 tshp: 10
Wed Aug 24 11:15:33 2022
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 12:06:15 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 55
Processing elapsed time: 0:55
Saved frames are: 369
Processing elapsed time: 2:13
BERIO060
tsh: 80 tshp: 1
Wed Aug 24 11:19:45 2022
BERIO333
tsh: 97 tshp: 93
Thu Aug 25 12:20:24 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 55
Processing elapsed time: 0:57
Saved frames are: 399
Processing elapsed time: 1:3
BERIO060
tsh: 80 tshp: 1
Wed Aug 24 11:22:29 2022
BERIO415
tsh: 97 tshp: 93
Thu Aug 25 12:21:30 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
BERIO060
tsh: 80 tshp: 90
Wed Aug 24 11:25:05 2022
BERIO333
tsh: 96 tshp: 93
Thu Aug 25 12:22:57 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 77
Processing elapsed time: 1:0
BERIO415
tsh: 98 tshp: 93
Thu Aug 25 12:23:54 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 369
Processing elapsed time: 2:15
BERIO060
tsh: 80 tshp: 95
Wed Aug 24 11:27:27 2022
BERIO415
tsh: 97 tshp: 93
Thu Aug 25 12:26:55 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 55
Processing elapsed time: 0:57
BERIO333
tsh: 83 tshp: 93
Thu Aug 25 15:12:28 2022
READING HEAD: Positive is the only choice.
TAPE: Positive is the only choice.
Shifting down rectTape!
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 439
Processing elapsed time: 1:12
BERIO060
tsh: 80 tshp: 92
Wed Aug 24 11:28:43 2022
BERIO415
tsh: 77 tshp: 93
Thu Aug 25 15:13:44 2022
READING HEAD: Positive is best.
TAPE: Negative is best.
CAPSTAN: Positive is the only choice.
Processing areas found!
Saved frames are: 57
Processing elapsed time: 0:56
Saved frames are: 193
Processing elapsed time: 2:55
......@@ -421,6 +421,7 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/ostream
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/bitset
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__bit_reference
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/iostream
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/sys/timeb.h
/usr/local/include/boost/uuid/uuid.hpp
......@@ -1181,5 +1182,4 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o
/usr/local/include/nlohmann/thirdparty/hedley/hedley_undef.hpp
/Users/nadir/Documents/MPAI-CAE/AIMs/VideoAnalyser/src/utility.h
/Users/nadir/Documents/MPAI-CAE/AIMs/VideoAnalyser/src/forAudioAnalyser.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream
......@@ -420,6 +420,7 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o: ../src/script.cpp \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/ostream \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/bitset \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__bit_reference \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/iostream \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/sys/timeb.h \
/usr/local/include/boost/uuid/uuid.hpp \
......@@ -1179,12 +1180,9 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o: ../src/script.cpp \
/usr/local/include/nlohmann/detail/macro_unscope.hpp \
/usr/local/include/nlohmann/thirdparty/hedley/hedley_undef.hpp \
../src/utility.h \
../src/forAudioAnalyser.h \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream
../src/forAudioAnalyser.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream:
/usr/local/include/nlohmann/thirdparty/hedley/hedley_undef.hpp:
/usr/local/include/nlohmann/detail/output/serializer.hpp:
......@@ -1651,12 +1649,6 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o: ../src/script.cpp \
/usr/local/include/boost/mpl/identity.hpp:
/usr/local/include/boost/function_types/is_callable_builtin.hpp:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/sys/wait.h:
/usr/local/include/boost/mpl/aux_/preprocessed/gcc/reverse_fold_impl.hpp:
/usr/local/include/boost/mpl/reverse_fold.hpp:
/usr/local/include/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp:
......@@ -2501,6 +2493,8 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o: ../src/script.cpp \
/usr/local/include/boost/static_assert.hpp:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream:
/usr/local/Cellar/opencv/4.5.5_2/include/opencv4/opencv2/imgproc/segmentation.hpp:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__algorithm/search_n.h:
......@@ -3375,6 +3369,12 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o: ../src/script.cpp \
/usr/local/include/boost/preprocessor/comparison/not_equal.hpp:
/usr/local/include/boost/function_types/is_callable_builtin.hpp:
/usr/local/include/boost/mpl/aux_/preprocessed/gcc/reverse_fold_impl.hpp:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/sys/wait.h:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/compare:
/usr/local/include/boost/mpl/aux_/preprocessed/gcc/quote.hpp:
......
......@@ -418,6 +418,7 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o: \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/ostream \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/bitset \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__bit_reference \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/iostream \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/sys/timeb.h \
/usr/local/include/boost/uuid/uuid.hpp \
......@@ -1176,5 +1177,4 @@ CMakeFiles/frame_extraction.dir/src/script.cpp.o: \
/usr/local/include/nlohmann/detail/macro_unscope.hpp \
/usr/local/include/nlohmann/thirdparty/hedley/hedley_undef.hpp \
/Users/nadir/Documents/MPAI-CAE/AIMs/VideoAnalyser/src/utility.h \
/Users/nadir/Documents/MPAI-CAE/AIMs/VideoAnalyser/src/forAudioAnalyser.h \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/fstream
/Users/nadir/Documents/MPAI-CAE/AIMs/VideoAnalyser/src/forAudioAnalyser.h
......@@ -4,8 +4,8 @@
"OutputPath": "../output/",
"PreservationAudioVisualFile": "../input/BERIO060.mov",
"Speed": 7.5,
"ThresholdPercentualTape": 80,
"ThresholdPercentualCapstan": 92,
"ThresholdPercentualTape": 77,
"ThresholdPercentualCapstan": 93,
"MinDist": 10,
"AngleThresh": 10000,
"ScaleThresh": 200,
......
#include <vector>
#include <string.h>
#include <fstream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/imgproc.hpp>
using namespace cv;
using namespace std;
namespace fs = std::__fs::filesystem;
using json = nlohmann::json;
void extractIrregularityImagesForAudio(std::string outputPath, std::string videoPath, json irregularityFileInput, json &irregularityFileOutput2) {
......
......@@ -10,6 +10,7 @@
@date 29-06-2022
*/
#include <filesystem>
#include <fstream>
#include <iostream>
#include <sys/timeb.h>
......@@ -46,7 +47,7 @@ bool savingBrand = false;
cv::Mat myFrame;
float mediaPrevFrame = 0;
bool firstBrand = true; // The first frame containing brands on tape must be saved
float firstBrandInstant = 0;
float firstInstant = 0;
// config.json parameters
bool brands;
......@@ -185,26 +186,38 @@ bool frameDifference(cv::Mat prevFrame, cv::Mat currentFrame, int msToEnd) {
}
mediaCurrFrame = totColoreCF/tapeAreaPixels;
/************************************* Decision stage ****************************************/
if (blackPixels > tapeDifferentPixelsThreshold) {
if (brands) {
/***** AVERAGE_COLOR-BASED DECISION *****/
if (mediaPrevFrame > (mediaCurrFrame + 10) || mediaPrevFrame < (mediaCurrFrame - 10)) { // They are not similar for color average
// Update mediaPrevFrame
mediaPrevFrame = mediaCurrFrame;
firstBrandInstant = msToEnd;
return true;
}
// If the above condition is not verified, update anyway mediaPrevFrame
mediaPrevFrame = mediaCurrFrame;
/***** BRANDS MANAGEMENT *****/
// At the beginning of the video, wait at least 1 second before the next Irregularity to consider it as a brand.
// It is not guaranteed that it will be the first brand, but it is generally a safe approach to have a correct image
if (firstBrand && (firstBrandInstant - msToEnd > 1000)) {
if (firstBrand && (firstInstant - msToEnd > 1000)) {
firstBrand = false;
savingBrand = true;
return true;
}
// In the following iterations reset savingBrand, since we are no longer interested in brands.
if (savingBrand)
savingBrand = false;
} else {
// With no brands, overcoming the threshold is sufficient
return true;
}
}
return false;
......@@ -231,7 +244,7 @@ int processing(cv::VideoCapture videoCapture, std::string fileName) {
// The first frame of the video won't be processed
cv::Mat prevFrame;
videoCapture >> prevFrame;
firstBrandInstant = videoLength_ms - videoCapture.get(CAP_PROP_POS_MSEC);
firstInstant = videoLength_ms - videoCapture.get(CAP_PROP_POS_MSEC);
while (videoCapture.isOpened()) {
......@@ -285,7 +298,7 @@ int processing(cv::VideoCapture videoCapture, std::string fileName) {
std::string timeLabel = getTimeLabel(ms);
std::string safeTimeLabel = getSafeTimeLabel(ms);
saveIrregularityImage(safeTimeLabel, fileName, oddFrame, oddSubImage, savingPinchRoller);
saveIrregularityImage(safeTimeLabel, fileName, oddFrame, oddSubImage, savingPinchRoller, savingBrand);
// Append Irregularity information to JSON
boost::uuids::uuid uuid = boost::uuids::random_generator()();
......@@ -414,24 +427,32 @@ bool findProcessingAreas(json configurationFile) {
RotatedRect rectPos = drawShapes(myFrame, positionsPos, Scalar(0, 0, 255), templateImageHalf.cols, templateImageHalf.rows, 0, 0, 2);
RotatedRect rectNeg = drawShapes(myFrame, positionsNeg, Scalar(128, 128, 255), templateImageHalf.cols, templateImageHalf.rows, 0, 0, 2);
ofstream myFile;
myFile.open("log.txt", ios::app);
Point2f pts[4];
if (rectPos.size.width > 0)
if (rectNeg.size.width > 0)
if (votesPos.at<int>(0) > votesNeg.at<int>(0)) {
cout << "Positive is best" << endl;
cout << "Positive is best." << endl;
myFile << "READING HEAD: Positive is best." << std::endl;
rect = rectPos;
} else {
cout << "Negative is best" << endl;
cout << "Negative is best." << endl;
myFile << "READING HEAD: Negative is best." << std::endl;
rect = rectNeg;
}
else {
cout << "Positive is the only choice." << endl;
myFile << "READING HEAD: Positive is the only choice." << std::endl;
rect = rectPos;
}
else if (rectNeg.size.width > 0) {
cout << "Negative is the only choice." << endl;
myFile << "READING HEAD: Negative is the only choice." << std::endl;
rect = rectNeg;
} else {
myFile.close();
return false;
}
cout << endl;
......@@ -490,27 +511,44 @@ bool findProcessingAreas(json configurationFile) {
tm.stop();
std::cout << "Tape detection time : " << tm.getTimeMilli() << " ms" << endl;
RotatedRect rectTapePos = drawShapes(myFrame, positionsTapePos, Scalar(0, 255, 0), templateShape.cols, templateShape.rows, tapeProcessingAreaX, tapeProcessingAreaY, 1);
RotatedRect rectTapeNeg = drawShapes(myFrame, positionsTapeNeg, Scalar(128, 255, 128), templateShape.cols, templateShape.rows, tapeProcessingAreaX, tapeProcessingAreaY, 1);
RotatedRect rectTapeNeg = drawShapes(myFrame, positionsTapeNeg, Scalar(192, 255, 192), templateShape.cols, templateShape.rows, tapeProcessingAreaX, tapeProcessingAreaY, 1);
if (rectTapePos.size.width > 0)
if (rectTapeNeg.size.width > 0)
if (votesTapePos.at<int>(0) > votesTapeNeg.at<int>(0)) {
cout << "Positive is best" << endl;
cout << "Positive is best." << endl;
myFile << "TAPE: Positive is best." << std::endl;
rectTape = rectTapePos;
} else {
cout << "Negative is best" << endl;
cout << "Negative is best." << endl;
myFile << "TAPE: Negative is best." << std::endl;
rectTape = rectTapeNeg;
}
else {
cout << "Positive is the only choice." << endl;
myFile << "TAPE: Positive is the only choice." << std::endl;
rectTape = rectTapePos;
}
else if (rectTapeNeg.size.width > 0) {
cout << "Negative is the only choice." << endl;
myFile << "TAPE: Negative is the only choice." << std::endl;
rectTape = rectTapeNeg;
} else {
myFile.close();
return false;
}
if (rectTape.center.y < (rect.center.y + (rect.size.height + rectTape.size.height) * 0.45)) { // 0.45 is an arbitrary value, meaning that they are overlapping too much
cout << "Shifting down rectTape!" << endl;
myFile << "Shifting down rectTape!" << std::endl;
rectTape.center.y = rect.center.y + (rect.size.height + rectTape.size.height) * 0.45;
Point2f rrpts[4];
rectTape.points(rrpts);
line(myFrame, rrpts[0], rrpts[1], Scalar(255, 255, 255), 2);
line(myFrame, rrpts[1], rrpts[2], Scalar(255, 255, 255), 2);
line(myFrame, rrpts[2], rrpts[3], Scalar(255, 255, 255), 2);
line(myFrame, rrpts[3], rrpts[0], Scalar(255, 255, 255), 2);
}
cout << endl;
/******************************************* CAPSTAN DETECTION *******************************************/
......@@ -565,27 +603,35 @@ bool findProcessingAreas(json configurationFile) {
if (rectCapstanPos.size.width > 0)
if (rectCapstanNeg.size.width > 0)
if (votesC1Pos.at<int>(0) > votesC1Neg.at<int>(0)) {
cout << "Positive is best" << endl;
cout << "Positive is best." << endl;
myFile << "CAPSTAN: Positive is best." << std::endl;
rectCapstan = rectCapstanPos;
} else {
cout << "Negative is best" << endl;
cout << "Negative is best." << endl;
myFile << "CAPSTAN: Negative is best." << std::endl;
rectCapstan = rectCapstanNeg;
}
else {
cout << "Positive is the only choice." << endl;
myFile << "CAPSTAN: Positive is the only choice." << std::endl;
rectCapstan = rectCapstanPos;
}
else if (rectTapeNeg.size.width > 0) {
cout << "Negative is the only choice." << endl;
myFile << "CAPSTAN: Negative is the only choice." << std::endl;
rectCapstan = rectCapstanNeg;
} else {
myFile.close();
return false;
}
myFile.close();
cout << endl;
// Shows the detected areas
// Show the image
// imshow("Tape area(s)", myFrame);
// waitKey();
// Save the image containing the detected areas
cv::imwrite(outputPath + "/tapeAreas.jpg", myFrame);
return true;
}
......@@ -600,11 +646,29 @@ int main(int argc, char** argv) {
iConfig >> configurationFile;
// Initialise parameters
try {
brands = configurationFile["Brands"];
if (argc == 1) {
// Read from JSON file
videoPath = configurationFile["PreservationAudioVisualFile"];
speed = configurationFile["Speed"];
brands = configurationFile["Brands"];
} else if (argc == 4) {
// Read from command line
videoPath = argv[1];
speed = std::stof(argv[2]);
if (strcmp(argv[3], "true") == 0)
brands = true;
else if (strcmp(argv[3], "false") == 0)
brands = false;
else {
std::cerr << "\033[1;31mArguments error!\033[0;31m\nBrands must be 'true' or 'false'." << std::endl;
return -1;
}
} else {
std::cerr << "\033[1;31mArguments error!\033[0;31m\nRun with no arguments to use input JSON, or run with argv[1] = 'path/to/input' and argv[2] = 'speed' arguments." << std::endl;
return -1;
}
irregularityFileInputPath = configurationFile["IrregularityFileInput"];
outputPath = configurationFile["OutputPath"];
videoPath = configurationFile["PreservationAudioVisualFile"];
speed = configurationFile["Speed"];
tapeThresholdPercentual = configurationFile["ThresholdPercentualTape"];
capstanThresholdPercentual = configurationFile["ThresholdPercentualCapstan"];
} catch (nlohmann::detail::type_error e) {
......@@ -636,11 +700,16 @@ int main(int argc, char** argv) {
}
// Speed reference = 7.5
// If the speed is 15, then increase threshold percentual by 4 to have similar detection performance
if (speed == 15)
tapeThresholdPercentual += 4;
std::cout << "\nParameters from config.json file:" << std::endl;
if (brands) {
if (speed == 15)
tapeThresholdPercentual += 6;
} else
if (speed == 15)
tapeThresholdPercentual += 20;
else
tapeThresholdPercentual += 21;
std::cout << "\nParameters:" << std::endl;
std::cout << " Brands: " << brands << std::endl;
std::cout << " Speed: " << speed << std::endl;
std::cout << " ThresholdPercentual: " << tapeThresholdPercentual << std::endl;
......@@ -650,6 +719,39 @@ int main(int argc, char** argv) {
// Read input JSON
iJSON >> irregularityFileInput;
/********************************** MAKE GENERIC DIRECTORY **************************************/
// Get now time
std::time_t t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());
struct tm *parts = std::localtime(&t);
int day = parts->tm_mday, month = parts->tm_mon + 1, year = parts->tm_year + 1900, hours = parts->tm_hour, minutes = parts->tm_min, seconds = parts->tm_sec;
std::string dayStr = std::to_string(day), monthStr = std::to_string(month), yearStr = std::to_string(year), hoursStr = std::to_string(hours), minutesStr = std::to_string(minutes), secondsStr = std::to_string(seconds);
if (day < 10)
dayStr = "0" + dayStr;
if (month < 10)
monthStr = "0" + monthStr;
if (hours < 10)
hoursStr = "0" + hoursStr;
if (minutes < 10)
minutesStr = "0" + minutesStr;
if (seconds < 10)
secondsStr = "0" + secondsStr;
// Make directory with fileName name
int outputFileNameDirectory = fs::create_directory(outputPath + fileName);
// Update output path
outputPath += fileName + "/" + yearStr + "-" + monthStr + "-" + dayStr + "_" + hoursStr + "-" + minutesStr + "-" + secondsStr + "/";
// Create a new directory named as the current time for multiple runs
int outputNowDirectory = fs::create_directory(outputPath);
// Get now time
std::string ts = std::ctime(&t);
ofstream myFile;
myFile.open("log.txt", ios::app);
myFile << endl << fileName << endl;
myFile << "tsh: " << tapeThresholdPercentual << " tshp: " << capstanThresholdPercentual << std::endl;
myFile << ts; // No endline character for avoiding middle blank line.
myFile.close();
/******************************************* TAPE AREA DETECTION *******************************************/
cv::VideoCapture videoCapture(videoPath);
......@@ -673,15 +775,7 @@ int main(int argc, char** argv) {
/**************************** WRITE USEFUL INFORMATION TO LOG FILE ***************************/
// Get now time
std::time_t t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());
std::string ts = std::ctime(&t);
ofstream myFile;
myFile.open("log.txt", ios::app);
myFile << endl << fileName << endl;
myFile << "tsh: " << tapeThresholdPercentual << " tshp: " << capstanThresholdPercentual << std::endl;
myFile << ts; // No endline character for avoiding middle blank line.
if (found) {
std::cout << "Processing areas found!" << endl;
myFile << "Processing areas found!" << endl;
......
......@@ -9,29 +9,6 @@ FILE SYSTEM FUNCTIONS
------------------------------------------------------------------------------ */
void makeDirectories(std::string fileName, std::string outputPath, bool brands) {
// Get now time
std::time_t t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());
struct tm *parts = std::localtime(&t);
int day = parts->tm_mday, month = parts->tm_mon + 1, year = parts->tm_year + 1900, hours = parts->tm_hour, minutes = parts->tm_min, seconds = parts->tm_sec;
std::string dayStr = std::to_string(day), monthStr = std::to_string(month), yearStr = std::to_string(year), hoursStr = std::to_string(hours), minutesStr = std::to_string(minutes), secondsStr = std::to_string(seconds);
if (day < 10)
dayStr = "0" + dayStr;
if (month < 10)
monthStr = "0" + monthStr;
if (hours < 10)
hoursStr = "0" + hoursStr;
if (minutes < 10)
minutesStr = "0" + minutesStr;
if (seconds < 10)
secondsStr = "0" + secondsStr;
// Make directory with fileName name
int outputFileNameDirectory = fs::create_directory(outputPath + fileName);
// Update output path
outputPath += fileName + "/" + yearStr + "-" + monthStr + "-" + dayStr + "_" + hoursStr + "-" + minutesStr + "-" + secondsStr + "/";
// Create a new directory named as the current time for multiple runs
int outputNowDirectory = fs::create_directory(outputPath);
// Make output directories
pathBrand = outputPath + "/brand";
pathFullFrame = outputPath + "/fullFrame";
......@@ -46,7 +23,7 @@ void makeDirectories(std::string fileName, std::string outputPath, bool brands)
int capsDirectory = fs::create_directory(pathEndTape);
}
void saveIrregularityImage(std::string safeTimeLabel, std::string fileName, cv::Mat frame, cv::Mat subFrame, bool endFrame) {
void saveIrregularityImage(std::string safeTimeLabel, std::string fileName, cv::Mat frame, cv::Mat subFrame, bool endFrame, bool brandFrame) {
// if (savingPinchRoller) {
// cv::imwrite(pathEndTape + "/" + fileName + "_" + safeTimeLabel + ".jpg", frame);
......@@ -58,10 +35,12 @@ void saveIrregularityImage(std::string safeTimeLabel, std::string fileName, cv::
// Writing image
cv::imwrite(pathFullFrame + "/" + fileName + "_" + safeTimeLabel + ".jpg", frame);
if (!endFrame) {
cv::imwrite(pathTape + "/" + fileName + "_" + safeTimeLabel + ".jpg", subFrame);
} else {
if (endFrame) {
cv::imwrite(pathEndTape + "/" + fileName + "_" + safeTimeLabel + ".jpg", subFrame);
} else if (brandFrame) {
cv::imwrite(pathBrand + "/" + fileName + "_" + safeTimeLabel + ".jpg", subFrame);
} else {
cv::imwrite(pathTape + "/" + fileName + "_" + safeTimeLabel + ".jpg", subFrame);
}
cv::Mat resized224Nas;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment