{"cells":[{"metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true},"cell_type":"code","source":"# This kernel imports code from codebase.py, a custom script I made.\n# It is available at: https://www.kaggle.com/samuelepino/codebase\n\nimport os\nimport sys\nsys.path.append(\"../usr/lib/codebase/\")\nfrom codebase import ICPR, Segmenter, Explainer, Pipeline, VideoLoader","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"Take consecutive frames from the beginning of the video","execution_count":null},{"metadata":{"trusted":true},"cell_type":"code","source":"# Configuration\nN_VIDEOS = 5\nFRAMES_PER_VIDEO = 10\nSHAP_SAMPLES = 2000\nN_SEGMENTS = 100\n\n# Initialization\nclassif = ICPR(frames_per_video=FRAMES_PER_VIDEO, consecutive_frames=True)\nseg = Segmenter(mode=\"color\", segmentsNumber=N_SEGMENTS)\nexpl = Explainer(classifier=classif, trackTime=False)\n\np = Pipeline(classif, seg, expl, segmentationDim=\"3D\", explanationMode=\"frame\",\n             nSegments=N_SEGMENTS, shapSamples=SHAP_SAMPLES)\n\ndfdc_vidlist = VideoLoader.loadFilenamesDFDC(\n    videoCount=N_VIDEOS, \n    fakeClassValue=classif.FAKE_CLASS_VAL,\n    realClassValue=classif.REAL_CLASS_VAL)[1:]\n\nfor (vidName, vidClass) in dfdc_vidlist:\n    print(\"Analyzing sequence\", vidName)\n    vidPath = os.path.join(VideoLoader.DFDC_trainVideoDir, vidName)\n    # Get image sequence from folder\n    imageSequence = classif.getFaceCroppedVideo(vidPath)\n    p.start(imageSequence, vidClass, vidName)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"# Configuration\nN_VIDEOS = 5\nFRAMES_PER_VIDEO = 10\nSHAP_SAMPLES = 4000\nN_SEGMENTS = 100\n\n# Initialization\nclassif = ICPR(frames_per_video=FRAMES_PER_VIDEO, consecutive_frames=True)\nseg = Segmenter(mode=\"color\", segmentsNumber=N_SEGMENTS)\nexpl = Explainer(classifier=classif, trackTime=False)\n\np = Pipeline(classif, seg, expl, segmentationDim=\"3D\", explanationMode=\"frame\",\n             nSegments=N_SEGMENTS, shapSamples=SHAP_SAMPLES)\n\ndfdc_vidlist = VideoLoader.loadFilenamesDFDC(\n    videoCount=N_VIDEOS, \n    fakeClassValue=classif.FAKE_CLASS_VAL,\n    realClassValue=classif.REAL_CLASS_VAL)[1:]\n\nfor (vidName, vidClass) in dfdc_vidlist:\n    print(\"Analyzing sequence\", vidName)\n    vidPath = os.path.join(VideoLoader.DFDC_trainVideoDir, vidName)\n    # Get image sequence from folder\n    imageSequence = classif.getFaceCroppedVideo(vidPath)\n    p.start(imageSequence, vidClass, vidName)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"# Configuration\nN_VIDEOS = 5\nFRAMES_PER_VIDEO = 10\nSHAP_SAMPLES = 8000\nN_SEGMENTS = 100\n\n# Initialization\nclassif = ICPR(frames_per_video=FRAMES_PER_VIDEO, consecutive_frames=True)\nseg = Segmenter(mode=\"color\", segmentsNumber=N_SEGMENTS)\nexpl = Explainer(classifier=classif, trackTime=False)\n\np = Pipeline(classif, seg, expl, segmentationDim=\"3D\", explanationMode=\"frame\",\n             nSegments=N_SEGMENTS, shapSamples=SHAP_SAMPLES)\n\ndfdc_vidlist = VideoLoader.loadFilenamesDFDC(\n    videoCount=N_VIDEOS, \n    fakeClassValue=classif.FAKE_CLASS_VAL,\n    realClassValue=classif.REAL_CLASS_VAL)[1:]\n\nfor (vidName, vidClass) in dfdc_vidlist:\n    print(\"Analyzing sequence\", vidName)\n    vidPath = os.path.join(VideoLoader.DFDC_trainVideoDir, vidName)\n    # Get image sequence from folder\n    imageSequence = classif.getFaceCroppedVideo(vidPath)\n    p.start(imageSequence, vidClass, vidName)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"\"\"\"# Configuration\nN_VIDEOS = 5\nFRAMES_PER_VIDEO = 10\nSHAP_SAMPLES = 16000\nN_SEGMENTS = 100\n\n# Initialization\nclassif = ICPR(frames_per_video=FRAMES_PER_VIDEO, consecutive_frames=True)\nseg = Segmenter(mode=\"color\", segmentsNumber=N_SEGMENTS)\nexpl = Explainer(classifier=classif, trackTime=False)\n\np = Pipeline(classif, seg, expl, segmentationDim=\"3D\", explanationMode=\"frame\",\n             nSegments=N_SEGMENTS, shapSamples=SHAP_SAMPLES)\n\ndfdc_vidlist = VideoLoader.loadFilenamesDFDC(\n    videoCount=N_VIDEOS, \n    fakeClassValue=classif.FAKE_CLASS_VAL,\n    realClassValue=classif.REAL_CLASS_VAL)\n\nfor (vidName, vidClass) in dfdc_vidlist:\n    print(\"Analyzing sequence\", vidName)\n    vidPath = os.path.join(VideoLoader.DFDC_trainVideoDir, vidName)\n    # Get image sequence from folder\n    imageSequence = classif.getFaceCroppedVideo(vidPath)\n    p.start(imageSequence, vidClass, vidName)\"\"\"","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat":4,"nbformat_minor":4}