[sikuli] 04/30: Update and de-activate patch no-opencv-surf-module

Gilles Filippini pini at alioth.debian.org
Mon Nov 4 09:03:00 UTC 2013


This is an automated email from the git hooks/post-receive script.

pini pushed a commit to branch master
in repository sikuli.

commit d302e25784b94e41b81298567b9ab01580434c57
Author: Gilles Filippini <pini at debian.org>
Date:   Thu Oct 31 11:49:26 2013 +0100

    Update and de-activate patch no-opencv-surf-module
    
    Not needed currently, but keeping around just in case.
---
 debian/patches/no-opencv-surf-module.patch |  569 ++++++++++++++--------------
 debian/patches/series                      |    3 +-
 2 files changed, 279 insertions(+), 293 deletions(-)

diff --git a/debian/patches/no-opencv-surf-module.patch b/debian/patches/no-opencv-surf-module.patch
index c0678e2..213207f 100644
--- a/debian/patches/no-opencv-surf-module.patch
+++ b/debian/patches/no-opencv-surf-module.patch
@@ -3,12 +3,281 @@ Description: Remove unused code with dependency on the opencv SURF module
  anymore which is considered non-free.  Fortunately, Sikuli actually
  doesn't use the code depending on it.
  This patch removes the corresponding portions of code.
+ .
+ PATCH DEACTIVATED for upstream release 1.0.1 which has commented out the
+ code using SURF. Keeping it around for now.
 Author: Gilles Filippini <pini at debian.org>
-Index: sikuli/sikuli-script/src/main/native/cvgui.cpp
+Index: sikuli/vision-proxy/src/cvgui.h
 ===================================================================
---- sikuli.orig/sikuli-script/src/main/native/cvgui.cpp	2012-06-21 13:28:17.000000000 +0200
-+++ sikuli/sikuli-script/src/main/native/cvgui.cpp	2012-06-24 22:06:30.000000000 +0200
-@@ -1548,324 +1548,6 @@
+--- sikuli.orig/vision-proxy/src/cvgui.h	2013-10-19 16:32:09.000000000 +0200
++++ sikuli/vision-proxy/src/cvgui.h	2013-10-19 16:32:09.000000000 +0200
+@@ -180,7 +180,6 @@
+ 
+ public:
+ 
+-   static void segmentScreenshot(const Mat& screen, vector<Blob>& text_blobs, vector<Blob>& image_blobs);
+    static void getLineBlobsAsIndividualWords(const Mat& screen, vector<LineBlob>& lineblobs);
+    static void getParagraphBlobs(const Mat& screen, vector<ParagraphBlob>& parablobs);
+ 
+Index: sikuli/vision-proxy/src/imgdb.cpp
+===================================================================
+--- sikuli.orig/vision-proxy/src/imgdb.cpp	2013-10-19 16:32:09.000000000 +0200
++++ sikuli/vision-proxy/src/imgdb.cpp	2013-10-19 16:32:09.000000000 +0200
+@@ -24,38 +24,6 @@
+ }
+ 
+ 
+-vector<ImageRecord> 
+-Database::find(Mat image){
+-   vector<ImageRecord> top_matches;
+-   vector<ImageRecord> records;
+-   
+-   records = create_image_records_from_image(image);   
+-   
+-   for (vector<ImageRecord>::iterator r = records.begin();
+-        r != records.end(); ++r){
+-      
+-      //cout << endl << r->area << " : ";
+-      vector<ImageRecord> matches = find(*r);
+-      for (vector<ImageRecord>::iterator m = matches.begin();
+-           m != matches.end(); ++m){
+-         
+-         //cout << "(" << m->screenshot_id << ":" << m->id << ")";
+-      }
+-      
+-      if (!matches.empty())
+-         top_matches.push_back(matches[0]);
+-   }
+-   
+-   return top_matches;
+-   
+-}
+-
+-vector<ImageRecord> 
+-Database::find(const char* filename){
+-   Mat image = imread(filename, 1);
+-   return find(image);
+-}
+-
+ void
+ Database::insert(const ImageRecord& b){
+    _image_records.push_back(b);
+@@ -111,89 +79,6 @@
+ 
+ #include <fstream>
+ 
+-void
+-Database::insert_file(const char* filename, int screenshot_id){
+-   
+-   Mat image = imread(filename, 1);
+-   
+-   
+-   char buf[200];
+-//   sprintf(buf,"%s.ui",filename);
+-//   std::ofstream fout(buf);
+-   
+-   sprintf(buf,"%s.ui",filename);
+-   std::ofstream fout_loc(buf);
+-   
+-   vector<Blob> text_blobs, image_blobs;
+-   cvgui::segmentScreenshot(image, text_blobs, image_blobs);  
+-   
+-   
+-   vector<ImageRecord> records;
+-   records = create_image_records_from_blobs(image, image_blobs);
+-   
+-   for (int i = 0; i < image_blobs.size(); ++i){
+-      
+-      
+-      Blob& b = image_blobs[i];
+-      ImageRecord& r = records[i];
+-      
+-      // ignore small elements
+-      if (r.width < 15 || r.height < 15)
+-         continue;      
+-      
+-      vector<ImageRecord> matches;
+-      matches = find(r);
+-      
+-      if (matches.empty()){
+-         
+-         r.id = word_id;
+-         
+-         insert(r);
+-#if 0                  
+-         char buf[80];
+-         Mat part(image, b.bound);
+-         sprintf(buf, "research/result/ir-%d-%d.png",word_id,image_record_id);
+-         imwrite(buf, part);
+-#endif         
+-         word_id++;
+-         
+-      }else{
+-         
+-         r.id = matches[0].id;
+-      }
+-      
+-      //fout << "ui" << r.id << " ";
+-      
+-      
+-      
+-      fout_loc << r.x << " " << r.y << " " << r.width << " " << r.height << " ";
+-      fout_loc << "ui" << r.id;
+-      fout_loc << endl;
+-   }
+-   
+-   //fout << endl;
+-   //fout.close();
+-   fout_loc.close();
+-} 
+-
+-vector<ImageRecord>
+-Database::create_image_records_from_image(Mat image){
+-   vector<Blob> text_blobs;
+-   vector<Blob> image_blobs;
+-   
+-   cvgui::segmentScreenshot(image, text_blobs, image_blobs);     
+-   return create_image_records_from_blobs(image, image_blobs);
+-}
+-
+-
+-
+-vector<ImageRecord>
+-Database::create_image_records_from_imagefile(const char* filename){
+-   Mat image = imread(filename, 1);
+-   return create_image_records_from_image(image);
+-}
+-
+-
+ vector<ImageRecord>
+ Database::create_image_records_from_blobs(const Mat& src, const vector<Blob> image_blobs){
+    
+Index: sikuli/vision-proxy/src/imgdb.h
+===================================================================
+--- sikuli.orig/vision-proxy/src/imgdb.h	2013-10-19 16:32:09.000000000 +0200
++++ sikuli/vision-proxy/src/imgdb.h	2013-10-19 16:32:09.000000000 +0200
+@@ -56,9 +56,6 @@
+    vector<ImageRecord> find(const char* filename);
+    vector<ImageRecord> find(Mat image);   
+    
+-   void insert_file(const char* filename, int screenshot_id);   
+-   
+-   
+    void write(std::ostream& output_stream);
+    void read(std::istream& input_stream);   
+    
+@@ -67,8 +64,6 @@
+    vector<ImageRecord> _image_records;
+    
+    vector<ImageRecord> create_image_records_from_blobs(const Mat& src, const vector<Blob> image_blobs);
+-   vector<ImageRecord> create_image_records_from_imagefile(const char* imagefile);
+-   vector<ImageRecord> create_image_records_from_image(Mat image);   
+    
+ };
+ 
+Index: sikuli/vision-proxy/src/vision.cpp
+===================================================================
+--- sikuli.orig/vision-proxy/src/vision.cpp	2013-10-19 16:32:09.000000000 +0200
++++ sikuli/vision-proxy/src/vision.cpp	2013-10-19 16:32:09.000000000 +0200
+@@ -391,75 +391,12 @@
+    return text.getString();
+ }
+ 
+-string
+-Vision::query(const char* index_filename, cv::Mat image){
+-   
+-   Database db;   
+-   ifstream in(index_filename, ios::binary);
+-   db.read(in);
+-   in.close();
+-   
+-   
+-   string ret = "";
+-   
+-   vector<ImageRecord> results = db.find(image);   
+-   for (vector<ImageRecord>::iterator r = results.begin(); 
+-        r != results.end(); ++r){
+-      
+-      ImageRecord& record = *r;
+-      
+-      //cout << "ui" << record.id << " ";
+-      char buf[50];
+-      sprintf(buf,"ui%d",record.id);
+-      ret = ret + string(buf) + " ";
+-   }
+-   
+-   return ret;
+-}
+-
+-
+ OCRText
+ Vision::recognize_as_ocrtext(Mat image){
+    return OCR::recognize(image);
+ }
+ 
+ 
+-vector<FindResult>
+-Vision::findTextBlobs(const cv::Mat& image){
+-   return findBlobs(image, true);
+-}
+-
+-vector<FindResult>
+-Vision::findBlobs(const cv::Mat& image, bool textOnly){
+-   
+-   vector<FindResult> results;
+-   vector<Blob> out_text_blobs;
+-   vector<Blob> out_img_blobs;
+-   
+-   cvgui::segmentScreenshot(image, out_text_blobs, out_img_blobs);
+-   
+-   
+-   for (vector<Blob>::iterator i = out_text_blobs.begin();
+-        i != out_text_blobs.end(); ++i){
+-      
+-      Blob& b = *i;
+-      FindResult fr(b.x,b.y,b.width,b.height,1);
+-      results.push_back(fr);
+-   }
+-   
+-   if(!textOnly){
+-      for (vector<Blob>::iterator i = out_img_blobs.begin(); 
+-        i != out_img_blobs.end(); ++i){
+-
+-         Blob& b = *i;
+-         FindResult fr(b.x,b.y,b.width,b.height,1);      
+-         results.push_back(fr);      
+-      }
+-   }
+-
+-   return results;
+-}
+-
+ cv::Mat Vision::createMat(int _rows, int _cols, unsigned char* _data){
+    Mat mat_ref = Mat(_rows, _cols, CV_8UC4, _data);
+    Mat mat;
+Index: sikuli/vision-proxy/src/vision.h
+===================================================================
+--- sikuli.orig/vision-proxy/src/vision.h	2013-10-19 16:32:09.000000000 +0200
++++ sikuli/vision-proxy/src/vision.h	2013-10-19 16:32:09.000000000 +0200
+@@ -95,13 +95,8 @@
+    static void initOCR(const char* ocrDataPath);
+    
+    
+-   static string query(const char* index_filename, cv::Mat image);
+-   
+    static OCRText recognize_as_ocrtext(cv::Mat image);
+    
+-   static std::vector<FindResult> findBlobs(const cv::Mat& image, bool textOnly=false);
+-   static std::vector<FindResult> findTextBlobs(const cv::Mat& image);
+-      
+    static std::string recognize(cv::Mat image);
+    static std::string recognizeWord(cv::Mat image);
+ 
+Index: sikuli/vision-proxy/src/cvgui.cpp
+===================================================================
+--- sikuli.orig/vision-proxy/src/cvgui.cpp	2013-10-19 16:31:56.000000000 +0200
++++ sikuli/vision-proxy/src/cvgui.cpp	2013-10-19 16:31:50.000000000 +0200
+@@ -1548,325 +1548,6 @@
  //   VLOG("OCR-Result", ocr_result_image);
  }
  
@@ -299,11 +568,11 @@ Index: sikuli/sikuli-script/src/main/native/cvgui.cpp
 -      }else{ 
 -         
 -         
--         SURF surf_extractor(6.0e3);
+-//TODO         SURF surf_extractor(6.0e3);
 -         vector<KeyPoint> keypoints;
 -         
 -         // printf("Extracting keypoints\n");
--         surf_extractor(screen_gray, photo_mask, keypoints);
+-//TODO         surf_extractor(screen_gray, photo_mask, keypoints);
 -         //printf("Extracted %d keypoints from the image\n", (int)keypoints.size());
 -         
 -         for (vector<KeyPoint>::iterator it = keypoints.begin(); it != keypoints.end(); ++it){
@@ -330,291 +599,7 @@ Index: sikuli/sikuli-script/src/main/native/cvgui.cpp
 -}
 -
 -
- 
- 
- static int L1dist(Vec3b p1, Vec3b p2){
-Index: sikuli/sikuli-script/src/main/native/cvgui.h
-===================================================================
---- sikuli.orig/sikuli-script/src/main/native/cvgui.h	2012-06-21 13:28:17.000000000 +0200
-+++ sikuli/sikuli-script/src/main/native/cvgui.h	2012-06-24 22:06:30.000000000 +0200
-@@ -179,7 +179,6 @@
-    
- public:
-    
--   static void segmentScreenshot(const Mat& screen, vector<Blob>& text_blobs, vector<Blob>& image_blobs);
-    static void getLineBlobsAsIndividualWords(const Mat& screen, vector<LineBlob>& lineblobs);
-    static void getParagraphBlobs(const Mat& screen, vector<ParagraphBlob>& parablobs);
-    
-Index: sikuli/sikuli-script/src/main/native/imgdb.cpp
-===================================================================
---- sikuli.orig/sikuli-script/src/main/native/imgdb.cpp	2012-06-21 13:28:17.000000000 +0200
-+++ sikuli/sikuli-script/src/main/native/imgdb.cpp	2012-06-24 22:09:07.000000000 +0200
-@@ -24,38 +24,6 @@
- }
- 
- 
--vector<ImageRecord> 
--Database::find(Mat image){
--   vector<ImageRecord> top_matches;
--   vector<ImageRecord> records;
--   
--   records = create_image_records_from_image(image);   
--   
--   for (vector<ImageRecord>::iterator r = records.begin();
--        r != records.end(); ++r){
--      
--      //cout << endl << r->area << " : ";
--      vector<ImageRecord> matches = find(*r);
--      for (vector<ImageRecord>::iterator m = matches.begin();
--           m != matches.end(); ++m){
--         
--         //cout << "(" << m->screenshot_id << ":" << m->id << ")";
--      }
--      
--      if (!matches.empty())
--         top_matches.push_back(matches[0]);
--   }
--   
--   return top_matches;
--   
--}
--
--vector<ImageRecord> 
--Database::find(const char* filename){
--   Mat image = imread(filename, 1);
--   return find(image);
--}
--
- void
- Database::insert(const ImageRecord& b){
-    _image_records.push_back(b);
-@@ -111,89 +79,6 @@
- 
- #include <fstream>
- 
--void
--Database::insert_file(const char* filename, int screenshot_id){
--   
--   Mat image = imread(filename, 1);
--   
--   
--   char buf[200];
--//   sprintf(buf,"%s.ui",filename);
--//   std::ofstream fout(buf);
--   
--   sprintf(buf,"%s.ui",filename);
--   std::ofstream fout_loc(buf);
--   
--   vector<Blob> text_blobs, image_blobs;
--   cvgui::segmentScreenshot(image, text_blobs, image_blobs);  
--   
--   
--   vector<ImageRecord> records;
--   records = create_image_records_from_blobs(image, image_blobs);
--   
--   for (int i = 0; i < image_blobs.size(); ++i){
--      
--      
--      Blob& b = image_blobs[i];
--      ImageRecord& r = records[i];
--      
--      // ignore small elements
--      if (r.width < 15 || r.height < 15)
--         continue;      
--      
--      vector<ImageRecord> matches;
--      matches = find(r);
--      
--      if (matches.empty()){
--         
--         r.id = word_id;
--         
--         insert(r);
--#if 0                  
--         char buf[80];
--         Mat part(image, b.bound);
--         sprintf(buf, "research/result/ir-%d-%d.png",word_id,image_record_id);
--         imwrite(buf, part);
--#endif         
--         word_id++;
--         
--      }else{
--         
--         r.id = matches[0].id;
--      }
--      
--      //fout << "ui" << r.id << " ";
--      
--      
--      
--      fout_loc << r.x << " " << r.y << " " << r.width << " " << r.height << " ";
--      fout_loc << "ui" << r.id;
--      fout_loc << endl;
--   }
--   
--   //fout << endl;
--   //fout.close();
--   fout_loc.close();
--} 
--
--vector<ImageRecord>
--Database::create_image_records_from_image(Mat image){
--   vector<Blob> text_blobs;
--   vector<Blob> image_blobs;
--   
--   cvgui::segmentScreenshot(image, text_blobs, image_blobs);     
--   return create_image_records_from_blobs(image, image_blobs);
--}
--
 -
--
--vector<ImageRecord>
--Database::create_image_records_from_imagefile(const char* filename){
--   Mat image = imread(filename, 1);
--   return create_image_records_from_image(image);
--}
--
--
- vector<ImageRecord>
- Database::create_image_records_from_blobs(const Mat& src, const vector<Blob> image_blobs){
-    
-Index: sikuli/sikuli-script/src/main/native/imgdb.h
-===================================================================
---- sikuli.orig/sikuli-script/src/main/native/imgdb.h	2012-06-21 13:28:17.000000000 +0200
-+++ sikuli/sikuli-script/src/main/native/imgdb.h	2012-06-24 22:10:07.000000000 +0200
-@@ -56,9 +56,6 @@
-    vector<ImageRecord> find(const char* filename);
-    vector<ImageRecord> find(Mat image);   
-    
--   void insert_file(const char* filename, int screenshot_id);   
--   
--   
-    void write(std::ostream& output_stream);
-    void read(std::istream& input_stream);   
-    
-@@ -67,8 +64,6 @@
-    vector<ImageRecord> _image_records;
-    
-    vector<ImageRecord> create_image_records_from_blobs(const Mat& src, const vector<Blob> image_blobs);
--   vector<ImageRecord> create_image_records_from_imagefile(const char* imagefile);
--   vector<ImageRecord> create_image_records_from_image(Mat image);   
-    
- };
  
-Index: sikuli/sikuli-script/src/main/native/vision.cpp
-===================================================================
---- sikuli.orig/sikuli-script/src/main/native/vision.cpp	2012-06-21 13:28:17.000000000 +0200
-+++ sikuli/sikuli-script/src/main/native/vision.cpp	2012-06-24 22:09:38.000000000 +0200
-@@ -409,75 +409,12 @@
-    return text.getString();
- }
- 
--string
--Vision::query(const char* index_filename, cv::Mat image){
--   
--   Database db;   
--   ifstream in(index_filename, ios::binary);
--   db.read(in);
--   in.close();
--   
--   
--   string ret = "";
--   
--   vector<ImageRecord> results = db.find(image);   
--   for (vector<ImageRecord>::iterator r = results.begin(); 
--        r != results.end(); ++r){
--      
--      ImageRecord& record = *r;
--      
--      //cout << "ui" << record.id << " ";
--      char buf[50];
--      sprintf(buf,"ui%d",record.id);
--      ret = ret + string(buf) + " ";
--   }
--   
--   return ret;
--}
--
--
- OCRText
- Vision::recognize_as_ocrtext(Mat image){
-    return OCR::recognize(image);
- }
- 
- 
--vector<FindResult>
--Vision::findTextBlobs(const cv::Mat& image){
--   return findBlobs(image, true);
--}
--
--vector<FindResult>
--Vision::findBlobs(const cv::Mat& image, bool textOnly){
--   
--   vector<FindResult> results;
--   vector<Blob> out_text_blobs;
--   vector<Blob> out_img_blobs;
--   
--   cvgui::segmentScreenshot(image, out_text_blobs, out_img_blobs);
--   
--   
--   for (vector<Blob>::iterator i = out_text_blobs.begin();
--        i != out_text_blobs.end(); ++i){
--      
--      Blob& b = *i;
--      FindResult fr(b.x,b.y,b.width,b.height,1);
--      results.push_back(fr);
--   }
--   
--   if(!textOnly){
--      for (vector<Blob>::iterator i = out_img_blobs.begin(); 
--        i != out_img_blobs.end(); ++i){
--
--         Blob& b = *i;
--         FindResult fr(b.x,b.y,b.width,b.height,1);      
--         results.push_back(fr);      
--      }
--   }
--
--   return results;
--}
--
- cv::Mat Vision::createMat(int _rows, int _cols, unsigned char* _data){
-    Mat mat_ref = Mat(_rows, _cols, CV_8UC4, _data);
-    Mat mat;
-Index: sikuli/sikuli-script/src/main/native/vision.h
-===================================================================
---- sikuli.orig/sikuli-script/src/main/native/vision.h	2012-06-21 13:28:17.000000000 +0200
-+++ sikuli/sikuli-script/src/main/native/vision.h	2012-06-24 22:10:23.000000000 +0200
-@@ -93,13 +93,8 @@
-    static void initOCR(const char* ocrDataPath);
-    
-    
--   static string query(const char* index_filename, cv::Mat image);
--   
-    static OCRText recognize_as_ocrtext(cv::Mat image);
-    
--   static std::vector<FindResult> findBlobs(const cv::Mat& image, bool textOnly=false);
--   static std::vector<FindResult> findTextBlobs(const cv::Mat& image);
--      
-    static std::string recognize(cv::Mat image);
-    static std::string recognizeWord(cv::Mat image);
- 
-Index: sikuli/sikuli-script/src/main/native/vision.i
-===================================================================
---- sikuli.orig/sikuli-script/src/main/native/vision.i	2012-06-24 22:06:29.000000000 +0200
-+++ sikuli/sikuli-script/src/main/native/vision.i	2012-06-24 22:10:31.000000000 +0200
-@@ -213,14 +213,8 @@
-       
-       static void initOCR(const char* ocrDataPath);
-       
--      static std::string query(const char* index_filename, cv::Mat image);
--            
-       static OCRText recognize_as_ocrtext(cv::Mat image);
-       
--      static std::vector<FindResult> findBlobs(const cv::Mat& image, bool textOnly=false);
--
--      static std::vector<FindResult> findTextBlobs(const cv::Mat& image);
--      
-       static std::string recognize(cv::Mat image);
-       static std::string recognizeWord(cv::Mat image);
-       
+ static int L1dist(Vec3b p1, Vec3b p2){
+ 	return max(p1[0],p2[0])-min(p1[0],p2[0])+	
diff --git a/debian/patches/series b/debian/patches/series
index bbc5e4e..aa6079a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,6 @@
 native.patch
 install-extension.patch
 tess3.patch
-no-opencv-surf-module.patch
+# This patch isn't needed currently. See patch Description
+# no-opencv-surf-module.patch
 setTextAndMnemonic.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/sikuli.git



More information about the pkg-java-commits mailing list