| #!/bin/bash | |
| INPUT_FILE=$1 | |
| if [ -z"$INPUT_FILE" ]; | |
| then | |
| echo"Usage: ./execute_process.sh <Input image path>" | |
| else | |
| echo"Input File: " | |
| echo$INPUT_FILE | |
| cd src/utils | |
| python preprocess_img.py --input_image $INPUT_FILE --output_filename target.bin | |
| mv target.bin ../../res | |
| cd ../../ | |
| adb wait-for-device | |
| adb push res/nasa_srmodel.tflite /data/local/tmp | |
| adb push res/target.bin /data/local/tmp/target.bin | |
| adb push build/SR_visionrecovery /data/local/tmp | |
| adb shell /data/local/tmp/SR_visionrecovery | |
| adb pull /data/local/tmp/result.bin res/result.bin | |
| cd src/utils | |
| python postprocess_img.py --input_data "../../res/result.bin" --output_file "recover.png" | |
| fi |


PixelShuffle will cause the transpose input shape to 6D, which can't be compute in tensorflow lite
Try to use ConvTranspose2d to replace it
| CMAKE_MINIMUM_REQUIRED(VERSION 2.8) | |
| PROJECT("deadline-driven_NASA2019") | |
| SET(NDK_STANDALONE_TOOLCHAIN ../android-ndk-toolchain-arm64) | |
| SET(CMAKE_C_COMPILER ${NDK_STANDALONE_TOOLCHAIN}/bin/aarch64-linux-android-gcc) | |
| SET(CMAKE_CXX_COMPILER ${NDK_STANDALONE_TOOLCHAIN}/bin/aarch64-linux-android-g++) | |
| SET(SYSROOT ${NDK_STANDALONE_TOOLCHAIN}/sysroot) | |
| SET(CMAKE_FIND_ROOT_PATH ${NDK_STANDALONE_TOOLCHAIN}) | |
| SET(CMAKE_C_FLAGS "${LINUX_FLAGS} -D__ANDROID_LINUX__ -Wno-attributes --sysroot=${SYSROOT}") | |
| SET(CMAKE_CXX_FLAGS"${LINUX_FLAGS} -D__ANDROID_LINUX__ -Wno-attributes --sysroot=${SYSROOT} ") | |
| LINK_DIRECTORIES(${CMAKE_CURRENT_LIST_DIR}/libs/arm64) | |
| SET(CMAKE_EXE_LINKER_FLAGS"${CMAKE_EXE_LINKER_FLAGS} -fPIE -pie") | |
| SET(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} -std=c++14") | |
| set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} -ldl") | |
| ADD_EXECUTABLE(SR_visionrecovery src/TFLiteSR.cpp) | |
| TARGET_LINK_LIBRARIES(SR_visionrecovery -lz -llog) | |
| TARGET_LINK_LIBRARIES(SR_visionrecovery neuralnetworks) |


Project Github: https://github.com/Deadline-Driven/NASA2019_Projec...