Arkadaşlar merhaba Elimde olan resimlerin bazı yerleri silik bende bu durumu connected component labeling yontemi ile duzeltmeye calışıyorum fakat istediğim sonucu alamıyorum Cunku var olan noktaları birleştirmek takip etmek yerine sadece biraz daha fazla belirginleştiriyor 3 kod denedim bir tanesi hicbir işime yaramadı Ama gonder belki fark edemediğin yer vardır diyorsanız gonderirim Bir tanesi ile amacıma biraz yaklaşabildim onda da oluşan yeni resim kaydolmuyor İşte kod burda
Kod:
#include //#include "opencv2/imgcodecs.hpp" #include "opencv2/highgui/highgui.hpp" #include "opencv2/imgproc/imgproc.hpp" #include #include #include #include #include #include "opencv2/highgui/highgui.hpp" #include "opencv2/imgproc/imgproc.hpp" #include "opencv2/contrib/contrib.hpp" using namespace cv; using namespace std; Mat src; Mat src_gray; int thresh = 0; int max_thresh = 1000; RNG rng(12345); /// Function header void thresh_callback(int, void* ); /** * @function main */ int main( int, char** argv ) /// Convert image to gray and blur it cvtColor( src, src_gray, COLOR_BGR2GRAY ); blur( src_gray, src_gray, Size(3,3) ); /// Create Window const char* source_window = "Source"; namedWindow( source_window, WINDOW_AUTOSIZE ); imshow( source_window, src ); //imwrite("99113.png", thresh); createTrackbar( " Canny thresh:", "Source", &thresh, max_thresh, thresh_callback ); thresh_callback( 0, 0 ); waitKey(0); imwrite("99114.png",thresh); return(0); } /** * @function thresh_callback */ void thresh_callback(int, void* ) /// Show in a window namedWindow( "Contours", WINDOW_AUTOSIZE ); imshow( "Contours", drawing ); imwrite("99114.png", thresh); //imwrite("99111.png",src); }
kaydetmek istediğim resim 99114 adlı resim fakat olmuyor Nedeni hakkında fikirleriniz varsa bekliyorum
Bir de benim yazdığım bir kod var o da bir yere kadar calışıyor sonra duruyor Duzeltmek icin yeni yollar ararken sanırım birazda karıştırdım Opencv ile calışmayan arkadaşlar alttaki kodla ilgilenebilirse cok sevinirim Cunku algoritmik bir hata var sanırım
Kod:
#include #include #include #include #include #include using namespace cv; using namespace std; int sagindakini_bul(int x,int y) int solundakini_bul(int x,int y) int ustundekini_bul(int x,int y) int altindakini_bul(int x, int y) bool renklimi (int x, int y, Mat L) } void siyahboya(int x,int y ,Mat L) int main() else if (renklimi(solundakini_bul(i,j),j,L)) else if (renklimi (i,altindakini_bul(i,j),L)) else if (renklimi (i,ustundekini_bul(i,j),L)) else } }
Benim icin biraz aciliyeti olan onemli bir konu yardım ederseniz cok sevinirim
__________________
Connected Component Labeling
Android & IOS Uygulama Geliştirme0 Mesaj
●35 Görüntüleme
- ReadBull.net
- Programlama ve Yazılım
- Android & IOS Uygulama Geliştirme
- Connected Component Labeling