コード例 #1
0

    outputfileSize = 0
    outputFileName = inputFileName[:inputFileName.find('.')] + '.' + predictive_type + 'pv'
    if (codingType == 1):
        outputfileSize = writeToFile(1,1,fileContent,None,outputFileName)
    elif (codingType == 2):
        outputfileSize = shannonFano(fileContent,outputFileName, rootDir)
    elif (codingType == 3):
        outputfileSize = LZW(fileContent,outputFileName, rootDir)
    elif (codingType == 4):
        outputfileSize = arithmeticCoding(fileContent,outputFileName, rootDir)

    #it calculates the file size as if each binary digit had a size of 1-bit, simulating a real compression state.
    print "Original video file size: " + str(inputFileSize) + " bytes"
    print "Encoded video file size: " + str(outputfileSize) + " bytes"
    return outputFileName


if __name__ == '__main__':
    rootDir = util.safeGetDirectory()
    allFiles = [f for f in listdir(rootDir) if isfile(join(rootDir,f))]
    inputFileName =  util.getVideoFile(allFiles)

    #reads the input file name to check if it contains either spacial or temporal predictive coding data

    inputFilePath = rootDir + "/" + inputFileName
    codingType = util.selectCodingOption()

    compress(inputFilePath, codingType, rootDir)
コード例 #2
0
            elif option == "3":
                pc3(outputFile, yFrameValues, frameNum)
            elif option == "4":
                pc4(outputFile, yFrameValues, frameNum)
            elif option == "5":
                pc5(outputFile, yFrameValues, frameNum)
        else:
            break
    time.sleep(1)
    outputFile.close()

if __name__ == '__main__':
    # Directory in which all the video files are pesent
    rootDir = util.safeGetDirectory()

    # Get all the files from the root directory
    allFiles = [f for f in listdir(rootDir) if isfile(join(rootDir,f))]

    #Get the video for processing
    videoName = util.getVideoFile(allFiles)
    videoForProcessing = join(rootDir, videoName)

    option = util.getEncodingOption()
    x,y = util.getPixelRegion()

    fileName = videoName.strip('.mp4') + "_" + option + ".spc"
    outputFile = open(fileName, 'w')
    video = cv2.VideoCapture(videoForProcessing)

    spatialCoding(video, outputFile)