diff --git a/common/README.md b/common/README.md
index f02764ac9a741b7b2a76d70c6940df4d53f411d4..71915093a659253fbbed265205e253507d8634a5 100644
--- a/common/README.md
+++ b/common/README.md
@@ -67,6 +67,6 @@ You have 2 options to download the videos:
 1. First, go on the [google sheet](https://docs.google.com/spreadsheets/d/1kIrMOjcKJ8hslZoVMx1D0H7QYj9nQLFvzUAQ1U4Le-I/edit#gid=0), and choose a video that nobody already did, and put your name in the 2nd column
 2. Download the video, in **720p**
 3. Rename it using the video id on twitch, and place it in [../dataset/twitch/videos](../dataset/twitch/videos)
-5. Launch the python script [./research/scripts/extract_robots_views_from_video.py](./research/scripts/extract_robots_views_from_video.py), with the video id as parameter (In Pycharm, `Run` > `Edit Configurations...`, then in parameters enter the id). You can put multiple video ids by separating them with spaces.
+5. Launch the python script [./research/scripts/extract_robots_views_from_video.py](research_common/scripts/extract_robots_views_from_video.py), with the video id as parameter (In Pycharm, `Run` > `Edit Configurations...`, then in parameters enter the id). You can put multiple video ids by separating them with spaces.
 
 The frames will appear in the [../dataset/twitch/robots-views](../dataset/twitch/robots-views) folder.
diff --git a/common/research/dataset/twitch/robot_view.py b/common/research/dataset/twitch/robot_view.py
deleted file mode 100644
index 548fb954e0f39e63eaea8ff93ab06817d6c52b57..0000000000000000000000000000000000000000
--- a/common/research/dataset/twitch/robot_view.py
+++ /dev/null
@@ -1,16 +0,0 @@
-import numpy as np
-from scipy.spatial import distance
-from skimage import io
-
-
-ref_image = io.imread(f'{__file__}/../mask.jpg')
-
-_MASK = ref_image[:, :, 1] > 50
-_REF_IMG_MASKED = ref_image*_MASK[:, :, np.newaxis]
-_THRESHOLD = 23
-
-
-def is_image_from_robot_view(image: np.ndarray) -> bool:
-    img_masked = image * _MASK[:, :, np.newaxis]
-    return distance.euclidean(img_masked.flatten() / 255, _REF_IMG_MASKED.flatten() / 255) < _THRESHOLD
-
diff --git a/common/research/constants.py b/common/research_common/constants.py
similarity index 76%
rename from common/research/constants.py
rename to common/research_common/constants.py
index 5d39973e0f95aa6b432bf2e80a31a05360b90ff7..3b48b728374638f828ee4d624dd2c32e481d5e25 100644
--- a/common/research/constants.py
+++ b/common/research_common/constants.py
@@ -4,3 +4,4 @@ from pathlib import Path
 DSET_DIR = Path(__file__).parent.parent.parent / 'dataset'
 
 TWITCH_DSET: Path = DSET_DIR / 'twitch'
+ROCO_DSET: Path = DSET_DIR / 'dji_roco'
diff --git a/common/research/dataset/twitch/mask_detector.py b/common/research_common/dataset/twitch/mask_detector.py
similarity index 84%
rename from common/research/dataset/twitch/mask_detector.py
rename to common/research_common/dataset/twitch/mask_detector.py
index f8d9655983bb3bf4306a67cb402c5361f43e4eb1..577150559860f4e94e9e390e0a2e657303e8bf3f 100644
--- a/common/research/dataset/twitch/mask_detector.py
+++ b/common/research_common/dataset/twitch/mask_detector.py
@@ -7,12 +7,12 @@ import numpy as np
 
 
 class Zone:
-    def __init__(self, y_min, y_max, threshold, active_pixels, image_mask):
+    def __init__(self, x_min, x_max, y_min, y_max, threshold, active_pixels, image_mask):
 
         self.pixels = [
-            (pix[0], pix[1])
-            for pix in active_pixels
-            if y_min < pix[1] < y_max
+            (x, y)
+            for x, y in active_pixels
+            if (y_min <= y <= y_max) and (x_min <= x <= x_max)
         ]
 
         self.mean_r = self.get_mean(0, image_mask)
@@ -40,7 +40,7 @@ class Zone:
 
 
 class MaskDetector:
-    def __init__(self, image_path: Path, zones_params: List[Tuple[int, int, int]]):
+    def __init__(self, image_path: Path, zones_params: List[Tuple[int, int, int, int, int]]):
         image_mask = cv2.imread(str(image_path))
         active_px = [
              (a, b)
@@ -66,9 +66,9 @@ class MaskDetector:
 robot_view_detector = MaskDetector(
     Path(__file__).parent / 'mask_robot_view.jpg',
     [
-        (20, 70, 20),
-        (270, 370, 20),
-        (510, 770, 20),
+        (0, 2000, 20, 70, 20),
+        (0, 2000, 270, 370, 20),
+        (0, 2000, 510, 770, 20),
     ]
 )
 
diff --git a/common/research/dataset/twitch/mask_robot_view.jpg b/common/research_common/dataset/twitch/mask_robot_view.jpg
similarity index 100%
rename from common/research/dataset/twitch/mask_robot_view.jpg
rename to common/research_common/dataset/twitch/mask_robot_view.jpg
diff --git a/common/research/dataset/twitch/robots_views_extractor.py b/common/research_common/dataset/twitch/robots_views_extractor.py
similarity index 85%
rename from common/research/dataset/twitch/robots_views_extractor.py
rename to common/research_common/dataset/twitch/robots_views_extractor.py
index c6f7ed4295d7def38d9f80952200c8673476f6c4..2f24a49bc9126896763e7351d9e21fe69bad6e39 100644
--- a/common/research/dataset/twitch/robots_views_extractor.py
+++ b/common/research_common/dataset/twitch/robots_views_extractor.py
@@ -5,9 +5,9 @@ import ffmpeg
 import numpy as np
 from tqdm import tqdm
 
-from research.constants import TWITCH_DSET
-from research.dataset.twitch.mask_detector import is_image_from_robot_view
-from research.dataset.twitch.video_frame_generator import VideoFrameGenerator
+from research_common.constants import TWITCH_DSET
+from research_common.dataset.twitch.mask_detector import is_image_from_robot_view
+from research_common.dataset.twitch.video_frame_generator import VideoFrameGenerator
 
 RES_DIR: Path = TWITCH_DSET / 'robots-views'
 RES_DIR.mkdir(parents=True, exist_ok=True)
diff --git a/common/research/dataset/twitch/video_frame_generator.py b/common/research_common/dataset/twitch/video_frame_generator.py
similarity index 100%
rename from common/research/dataset/twitch/video_frame_generator.py
rename to common/research_common/dataset/twitch/video_frame_generator.py
diff --git a/common/research/scripts/extract_robots_views_from_video.py b/common/research_common/scripts/extract_robots_views_from_video.py
similarity index 59%
rename from common/research/scripts/extract_robots_views_from_video.py
rename to common/research_common/scripts/extract_robots_views_from_video.py
index ec38e4345469d9a40faa29770964be9041f3c4aa..0315bfbc331904dc380030214b90681d26dbd024 100644
--- a/common/research/scripts/extract_robots_views_from_video.py
+++ b/common/research_common/scripts/extract_robots_views_from_video.py
@@ -1,6 +1,6 @@
 import sys
 
-from research.dataset.twitch.robots_views_extractor import RobotsViewExtractor
+from research_common.dataset.twitch.robots_views_extractor import RobotsViewExtractor
 
 if __name__ == '__main__':
     for _video_name in sys.argv[1:]: