[Bug 751203] videostitching: Open CV video stitching plugin based on GstVideoAggregator

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Oct 15 15:22:02 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=751203

Matthew Waters <ystreet00 at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #309343|none                        |reviewed
             status|                            |

--- Comment #17 from Matthew Waters <ystreet00 at gmail.com> ---
Review of attachment 309343:
 --> (https://bugzilla.gnome.org/review?bug=751203&attachment=309343)

I had a quick look at this.  The base class you create, GstOpenCVAggregator,
seems like a lot of the negotiation code should be merged into
GstAggregator/GstVideoAggregator directly.  See
https://bugzilla.gnome.org/show_bug.cgi?id=746529 for that effort.

::: ext/opencv/gstcvstitching.cpp
@@ +52,3 @@
+ * <title>Example launch line</title>
+ * |[
+ * gst-launch-1.0 filesrc  location=IMG_20150529_152901.jpg ! jpegdec !
videoconvert ! imagefreeze ! stitcher. filesrc location=IMG_20150529_152907.jpg
! jpegdec ! videoconvert ! imagefreeze ! stitcher. cvstitching name=stitcher
stitcher.src ! videoconvert ! ximagesink sync=false

Should probably split these up to avoid going over 80 chars.

@@ +55,3 @@
+ * ]| image stitching.
+ * |[
+ * gst-launch-1.0 filesrc location=IMG_20150529_152901.jpg ! jpegdec !
videoconvert ! imagefreeze ! stitcher. filesrc location=IMG_20150529_152907.jpg
! jpegdec ! videoconvert ! imagefreeze ! stitcher. filesrc
location=IMG_20150529_152913.jpg ! jpegdec ! videoconvert ! imagefreeze !
stitcher. filesrc location=IMG_20150529_152918.jpg ! jpegdec ! videoconvert !
imagefreeze ! stitcher. filesrc location=IMG_20150529_152924.jpg ! jpegdec !
videoconvert ! imagefreeze ! stitcher. filesrc location=IMG_20150529_152929.jpg
! jpegdec ! videoconvert ! imagefreeze ! stitcher. filesrc
location=IMG_20150529_152933.jpg ! jpegdec ! videoconvert ! imagefreeze !
stitcher. filesrc location=IMG_20150529_152938.jpg ! jpegdec ! videoconvert !
imagefreeze ! stitcher. filesrc location=IMG_20150529_152942.jpg ! jpegdec !
videoconvert ! imagefreeze ! stitcher. filesrc location=IMG_20150529_152947.jpg
! jpegdec ! videoconvert ! imagefreeze ! stitcher. filesrc
location=IMG_20150529_152951.jpg ! jpegdec ! videoconvert ! imagefreeze !
stitcher. cvstitching name=stitcher stitcher.src ! videoconvert ! ximagesink
sync=false

and here

@@ +81,3 @@
+float match_conf = 0.3f;
+int blend_type = Blender::MULTI_BAND;
+float blend_strength = 5;

These should at least be static or added to the class if they can be changed
dynamically.  Most of these seem like they would be good candidates for
properties.

@@ +187,3 @@
+  static const GEnumValue cv_stitching_feature_type[] = {
+    {GST_CV_STITCHING_FEATURE_TYPES_SURF, "feature type surf", "surf"},
+    {GST_CV_STITCHING_FEATURE_TYPES_ORB, "feature type surf", "orb"},

s/surf/orb/ ?

@@ +564,3 @@
+    (*stitcher->finder)(img, features[i]);
+    features[i].img_idx = i;
+    //LOGLN("Features in image #" << i+1 << ": " <<
features[i].keypoints.size());

Either remove or add as a GST_DEBUG log.

@@ +613,3 @@
+    cameras[i].R.convertTo(R, CV_32F);
+    cameras[i].R = R;
+    //LOGLN("Initial intrinsics #" << indices[i]+1 << ":\n" <<
cameras[i].K());

GST logging or remove.  I won't highlight the rest.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list