endoreg-db 0.8.2.3__py3-none-any.whl → 0.8.2.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of endoreg-db might be problematic. Click here for more details.
- endoreg_db/urls/media.py +5 -0
- endoreg_db/views/__init__.py +2 -0
- endoreg_db/views/video/__init__.py +2 -1
- endoreg_db/views/video/correction.py +15 -2
- endoreg_db/views/video/video_correction.py +1 -1
- {endoreg_db-0.8.2.3.dist-info → endoreg_db-0.8.2.4.dist-info}/METADATA +1 -1
- {endoreg_db-0.8.2.3.dist-info → endoreg_db-0.8.2.4.dist-info}/RECORD +9 -9
- {endoreg_db-0.8.2.3.dist-info → endoreg_db-0.8.2.4.dist-info}/WHEEL +0 -0
- {endoreg_db-0.8.2.3.dist-info → endoreg_db-0.8.2.4.dist-info}/licenses/LICENSE +0 -0
endoreg_db/urls/media.py
CHANGED
|
@@ -30,6 +30,7 @@ from endoreg_db.views.video.correction import (
|
|
|
30
30
|
VideoAnalyzeView,
|
|
31
31
|
VideoApplyMaskView,
|
|
32
32
|
VideoRemoveFramesView,
|
|
33
|
+
VideoCorrectionView,
|
|
33
34
|
)
|
|
34
35
|
# ---------------------------------------------------------------------------------------
|
|
35
36
|
# ANNOTATION API ENDPOINTS
|
|
@@ -66,6 +67,10 @@ urlpatterns = [
|
|
|
66
67
|
# - History: Track all correction operations
|
|
67
68
|
# ---------------------------------------------------------------------------------------
|
|
68
69
|
|
|
70
|
+
# Video Correction API
|
|
71
|
+
# GET /api/media/videos/video-correction/{id}/ - Get video details for correction
|
|
72
|
+
path("media/videos/video-correction/<int:pk>", VideoCorrectionView.as_view(), name="video-correction"),
|
|
73
|
+
|
|
69
74
|
# Video Metadata API
|
|
70
75
|
# GET /api/media/videos/<int:pk>/metadata/
|
|
71
76
|
# Returns analysis results (sensitive frame count, ratio, frame IDs)
|
endoreg_db/views/__init__.py
CHANGED
|
@@ -150,6 +150,7 @@ from .video import (
|
|
|
150
150
|
rerun_segmentation,
|
|
151
151
|
video_timeline_view,
|
|
152
152
|
VideoExaminationViewSet,
|
|
153
|
+
VideoCorrectionView,
|
|
153
154
|
)
|
|
154
155
|
|
|
155
156
|
__all__ = [
|
|
@@ -269,6 +270,7 @@ __all__ = [
|
|
|
269
270
|
'VideoApplyMaskView',
|
|
270
271
|
'VideoRemoveFramesView',
|
|
271
272
|
'VideoReprocessView',
|
|
273
|
+
'VideoCorrectionView',
|
|
272
274
|
|
|
273
275
|
# Video Views (Existing)
|
|
274
276
|
'VideoReimportView',
|
|
@@ -5,6 +5,7 @@ from .correction import (
|
|
|
5
5
|
VideoApplyMaskView,
|
|
6
6
|
VideoRemoveFramesView,
|
|
7
7
|
VideoReprocessView,
|
|
8
|
+
VideoCorrectionView,
|
|
8
9
|
)
|
|
9
10
|
|
|
10
11
|
from ..media.video_media import VideoMediaView
|
|
@@ -42,7 +43,7 @@ __all__ = [
|
|
|
42
43
|
'VideoMediaView',
|
|
43
44
|
|
|
44
45
|
# TODO Phase 1.2+: Future views
|
|
45
|
-
|
|
46
|
+
'VideoCorrectionView',
|
|
46
47
|
# 'TaskStatusView',
|
|
47
48
|
# 'VideoDownloadProcessedView',
|
|
48
49
|
|
|
@@ -24,9 +24,24 @@ from endoreg_db.models import VideoFile, VideoMetadata, VideoProcessingHistory,
|
|
|
24
24
|
from endoreg_db.serializers import VideoMetadataSerializer, VideoProcessingHistorySerializer
|
|
25
25
|
from lx_anonymizer import FrameCleaner
|
|
26
26
|
|
|
27
|
+
from endoreg_db.models import VideoFile
|
|
28
|
+
from endoreg_db.serializers.video.video_file_detail import VideoDetailSerializer
|
|
29
|
+
from endoreg_db.utils.permissions import EnvironmentAwarePermission
|
|
30
|
+
|
|
27
31
|
logger = logging.getLogger(__name__)
|
|
28
32
|
|
|
29
33
|
|
|
34
|
+
class VideoCorrectionView(APIView):
|
|
35
|
+
"""
|
|
36
|
+
GET /api/video/media/video-correction/{id}/ - Get video details for correction
|
|
37
|
+
"""
|
|
38
|
+
permission_classes = [EnvironmentAwarePermission]
|
|
39
|
+
|
|
40
|
+
def get(self, request, pk):
|
|
41
|
+
video = get_object_or_404(VideoFile, pk=pk)
|
|
42
|
+
ser = VideoDetailSerializer(video, context={"request": request})
|
|
43
|
+
return Response(ser.data, status=status.HTTP_200_OK)
|
|
44
|
+
|
|
30
45
|
def update_segments_after_frame_removal(video: VideoFile, removed_frames: list) -> dict:
|
|
31
46
|
"""
|
|
32
47
|
Update LabelVideoSegment frame boundaries after frame removal.
|
|
@@ -240,8 +255,6 @@ class VideoAnalyzeView(APIView):
|
|
|
240
255
|
|
|
241
256
|
# Run analysis (uses existing FrameCleaner.analyze_video_sensitivity)
|
|
242
257
|
analysis_result = frame_cleaner.analyze_video_sensitivity(
|
|
243
|
-
video_path=video_path,
|
|
244
|
-
sample_interval=sample_interval
|
|
245
258
|
)
|
|
246
259
|
|
|
247
260
|
# Extract results
|
|
@@ -11,7 +11,7 @@ from rest_framework.views import APIView
|
|
|
11
11
|
|
|
12
12
|
class VideoCorrectionView(APIView):
|
|
13
13
|
"""
|
|
14
|
-
GET /api/video-correction/{id}/ - Get video details for correction
|
|
14
|
+
GET /api/video/media/video-correction/{id}/ - Get video details for correction
|
|
15
15
|
"""
|
|
16
16
|
permission_classes = [EnvironmentAwarePermission]
|
|
17
17
|
|
|
@@ -617,7 +617,7 @@ endoreg_db/urls/examination.py,sha256=IWNIR-hsWKD3nfL27EzMMazcZnOa_imjgk8RL0mql2
|
|
|
617
617
|
endoreg_db/urls/files.py,sha256=qfa8mPDNF9SW4z66B26SCtX7WHyoAo1muS1DR2QwST8,192
|
|
618
618
|
endoreg_db/urls/label_video_segment_validate.py,sha256=bGWacxIG4pHnGRbnHL_L91ShKWfKCn5X-YXsHGs6i-I,1044
|
|
619
619
|
endoreg_db/urls/label_video_segments.py,sha256=Hjc__HjohZnNE-oudqBc_uOIHqiSbQ_zpN4aHzGYRuE,1142
|
|
620
|
-
endoreg_db/urls/media.py,sha256=
|
|
620
|
+
endoreg_db/urls/media.py,sha256=wXu_bWlBCTBM1LlSjEsfq9sh5PcyKIJwh57UxyZV47A,11127
|
|
621
621
|
endoreg_db/urls/patient.py,sha256=VLKFbEiNgpfYLWFisbHidyoUnoQuEzj1U0SgZDpdPDM,588
|
|
622
622
|
endoreg_db/urls/report.py,sha256=9i3sOSofB7_PHGByr3DMghZFtcbjKf_U5PVSlxu9d4I,1917
|
|
623
623
|
endoreg_db/urls/requirements.py,sha256=5d-SD_7nsTA9YXlBeWdZuh-mXh26BkgH29fFBaTLjU8,455
|
|
@@ -680,7 +680,7 @@ endoreg_db/utils/video/names.py,sha256=m268j2Ynt94OYH6dYxeL8gzU5ODtFJD4OmzS7l0nB
|
|
|
680
680
|
endoreg_db/utils/video/streaming_processor.py,sha256=C-39DtxhSnL7B2cObFE5k829VLXl_Fl0KQFrFP368JA,13747
|
|
681
681
|
endoreg_db/utils/video/video_splitter.py,sha256=EZEnhNjaUva_9VxjcjScgRSrxsEuifhBjlwIMLX1qaA,3698
|
|
682
682
|
endoreg_db/views/Frames_NICE_and_PARIS_classifications_views.py,sha256=Lu1JuUD44B6yUAR9pcYLlQ-3g66VTktmzStuO0uGIj4,8752
|
|
683
|
-
endoreg_db/views/__init__.py,sha256=
|
|
683
|
+
endoreg_db/views/__init__.py,sha256=Jy92erUivibnqS-hEVkXdMFgIByc8qpzMnoPDL3nAFg,6941
|
|
684
684
|
endoreg_db/views/anonymization/__init__.py,sha256=s1_r9j0jPJsKHy1-isjFAlRF3Cw0o8EXxyUP7Xv1Kqo,698
|
|
685
685
|
endoreg_db/views/anonymization/media_management.py,sha256=ObiXjPa-KsSGs3IfmABE-TVzQZ2U6yJioFh64T7TtKY,16799
|
|
686
686
|
endoreg_db/views/anonymization/overview.py,sha256=fA4a4tZ4tbnWf3BUP6heAtqmHvinixUnDoI3dqPjTE0,8320
|
|
@@ -770,15 +770,15 @@ endoreg_db/views/requirement_lookup/lookup.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeR
|
|
|
770
770
|
endoreg_db/views/requirement_lookup/lookup_store.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
771
771
|
endoreg_db/views/stats/__init__.py,sha256=VHxrW0-RAWYki_89jWWJ0TrD7Nb0D3m-VjYV6bvP2k4,259
|
|
772
772
|
endoreg_db/views/stats/stats_views.py,sha256=v9ue1BKXdcApOgyolgNiT3hazx1xSVVvo26r91IozWY,8656
|
|
773
|
-
endoreg_db/views/video/__init__.py,sha256=
|
|
774
|
-
endoreg_db/views/video/correction.py,sha256=
|
|
773
|
+
endoreg_db/views/video/__init__.py,sha256=dm9BsgcB35kPq4Dn9rT6yoGuIkIHxYtVLEVGaAExOrA,1384
|
|
774
|
+
endoreg_db/views/video/correction.py,sha256=ioO52MU8bn7AvkVlU0D40EdxvogPOGtx30St5h9meDA,25656
|
|
775
775
|
endoreg_db/views/video/reimport.py,sha256=gSDBQ_Bam2xpJIj1SIMoLKnoBDBRgQ9V_TZdK9OICrI,8959
|
|
776
776
|
endoreg_db/views/video/segmentation.py,sha256=jzsLB95rYnHALSX2E_QNpAM9BpE1pbteOBxcAr_EjZo,11758
|
|
777
777
|
endoreg_db/views/video/task_status.py,sha256=PXaesTS4R7Uhu9WBaTL4lscpOschVqyR32zVDUuSbfw,1770
|
|
778
778
|
endoreg_db/views/video/timeline.py,sha256=6jxS2gZh3bYH0eZSc-uHQhJwRDwTL6Um3CvaVkTl_pY,1793
|
|
779
779
|
endoreg_db/views/video/video_analyze.py,sha256=vxQHnXRFH5Y6IaWEmEnE4Svkz6Vjw1O9NEJRafdfOe4,1907
|
|
780
780
|
endoreg_db/views/video/video_apply_mask.py,sha256=spGK4oXMAKhVotJuwZGndbKKws6klveKe35mbX7Rv6k,1630
|
|
781
|
-
endoreg_db/views/video/video_correction.py,sha256=
|
|
781
|
+
endoreg_db/views/video/video_correction.py,sha256=9mFICVvRSxp0WhGv7ib4d4M1hJs1iIhYmTl2OUIXQAg,767
|
|
782
782
|
endoreg_db/views/video/video_download_processed.py,sha256=tp5llYJKyQD0WSr4Fvqi-YrgBw2EPPe23E8F8SZbR4w,2000
|
|
783
783
|
endoreg_db/views/video/video_examination_viewset.py,sha256=77ujdUh8fzTC5Oe2fo4ESLBkwJ10rGhJLlQBpP1eMbQ,13663
|
|
784
784
|
endoreg_db/views/video/video_media.py,sha256=fvMQmSM1a-3rxpx_wK0wee9sRXV3EZz2bF8jLRAeaIQ,7022
|
|
@@ -787,7 +787,7 @@ endoreg_db/views/video/video_processing_history.py,sha256=mhFuS8RG5GV8E-lTtuD0qr
|
|
|
787
787
|
endoreg_db/views/video/video_remove_frames.py,sha256=2FmvNrSPM0fUXiBxINN6vBUUDCqDlBkNcGR3WsLDgKo,1696
|
|
788
788
|
endoreg_db/views/video/video_reprocess.py,sha256=IVlt_ASldNy5BywOecgkl1OT7l2SRijf78PUutMansA,1294
|
|
789
789
|
endoreg_db/views/video/video_stream.py,sha256=kLyuf0ORTmsLeYUQkTQ6iRYqlIQozWhMMR3Lhfe_trk,12148
|
|
790
|
-
endoreg_db-0.8.2.
|
|
791
|
-
endoreg_db-0.8.2.
|
|
792
|
-
endoreg_db-0.8.2.
|
|
793
|
-
endoreg_db-0.8.2.
|
|
790
|
+
endoreg_db-0.8.2.4.dist-info/METADATA,sha256=R_W40-C35-lrZiRGKehgXwebEUo7oHwY8zOgvAVfFcM,14772
|
|
791
|
+
endoreg_db-0.8.2.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
792
|
+
endoreg_db-0.8.2.4.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
793
|
+
endoreg_db-0.8.2.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|