void split(InputArray m, OutputArrayOfArrays mv)
-----------
Divides a multi-channel array into several single-channel arrays.Parameters:
- src – input multi-channel array.
- mv – output array or vector of arrays; in the first variant of the function the number of arrays must match src.channels(); the arrays themselves are reallocated, if needed.
Creates one multichannel array out of several single-channel ones.Parameters:
- mv – input array or vector of matrices to be merged; all the matrices in mv must have the same size and the same depth.
- dst – output array of the same size and the same depth as mv[0]; The number of channels will be the total number of channels in the matrix array.
Example:
-----------#include "opencv2/objdetect/objdetect.hpp" #include "opencv2/highgui/highgui.hpp" #include "opencv2/imgproc/imgproc.hpp" #include <iostream> #include <stdio.h> using namespace std; using namespace cv; int main() { Mat src=imread("image.jpg",1); namedWindow("src",1);imshow("src",src); // Split the image into different channels vector<Mat> rgbChannels(3); split(src, rgbChannels); // Show individual channels Mat g, fin_img; g = Mat::zeros(Size(src.cols, src.rows), CV_8UC1); // Showing Red Channel // G and B channels are kept as zero matrix for visual perception { vector<Mat> channels; channels.push_back(g); channels.push_back(g); channels.push_back(rgbChannels[2]); /// Merge the three channels merge(channels, fin_img); namedWindow("R",1);imshow("R", fin_img); } // Showing Green Channel { vector<Mat> channels; channels.push_back(g); channels.push_back(rgbChannels[1]); channels.push_back(g); merge(channels, fin_img); namedWindow("G",1);imshow("G", fin_img); } // Showing Blue Channel { vector<Mat> channels; channels.push_back(rgbChannels[0]); channels.push_back(g); channels.push_back(g); merge(channels, fin_img); namedWindow("B",1);imshow("B", fin_img); } waitKey(0); return 0; }
-----------
http://kemppro.blogspot.com/2014/05/splitting-image-in-to-three-channels.html has c implementation
ReplyDeleteerror:no instance of overloaded function "split" matches the argument list
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteThanks.!! really useful
ReplyDeleteThanks a lot
ReplyDeleteWhy don't you just directly draw the channel??
ReplyDeleteas in namedWindow("B",1);imshow("B", rgbChannels[0]);
#include
ReplyDelete#include
using namespace cv;
using namespace std;
int main(int argc, char** argv )
{
if ( argc != 2 )
{
printf("usage: DisplayImage.out \n");
return -1;
}
Mat img,chans[3];
img = imread(argv[1],1); //make sure its loaded with an image
if(!img.data)
{
printf("La imagen no existe\n");
return -1;
}
//split the channels in order to manipulate them
split(img,chans);
//by default opencv put channels in BGR order , so in your situation you want to copy the first channel which is blue. Set green and red channels elements to zero.
chans[1]=Mat::zeros(img.rows, img.cols, CV_8UC1); // green channel is set to 0
chans[2]=Mat::zeros(img.rows, img.cols, CV_8UC1);// red channel is set to 0
// matrices por separado
imshow("canal azul solo",chans[0]);
//then merge them back
merge(chans,3,img);
//display
imshow("BLUE CHAN",img);
cvWaitKey();
applets for java for all people
ReplyDeleteIs there a video splitter and merger example?
ReplyDeleteالتغليف الفقاعي: وهو تغليفٌ كشكل الفقاعات يقوم بالدفاع عن الزجاج والخشب وكل ما يتعرض للخدش وهو رائع ويُستخدم الصحون والأواني وغيرهم.
ReplyDeleteالتغليف الكرتوني: التغليف الكرتوني أو الورق المقوى هو تغليفٌ رائع وقويٌ للغايةً يستعمل للأغراض الثمينة وللكثير من الأثاث وحسب أشكاله.
بماذا نتميز عن غيرنا من مؤسسات نقل أثاث بالحناكية
ما هى فوائد افضل مؤسسات نقل الاثاث؟
على خلفية هذه الإمتيازات يتم اختيار مؤسسات نقل أثاث البيوت..مثل:
o أن تكون المؤسسة من زوي المعارف الطويلة في الميدان فكلما ارتفعت الخيرة التي تمتلكها مؤسسة نقل أثاث البيوت والمؤسسات والشركات تأتى أفضليتها على بقية مؤسسات نقل أثاث البيوت
o أن لديها المؤسسة الأيدي العاملة الفنية المدربة والمؤهلة لخدمة الزبائن وأن تحاول المؤسسة لتنمية وغلاء مهارات فريقها في نقل أثاث البيوت.
O أن لديها المؤسسة أجدد الأجهزة والمعدات التي تعاون على إكمال عملية نقل العفش في وقت أسرع وبمجهود أدنى وفى نفس الوقت لابد وأن لديها المؤسسة أكثر من مجموعة عمل وعدد وافي من المركبات والأوناش والأجهزة ما يؤهلها للقيام بأكثر من عملية نقل للأثاث .
O أن تقوم المؤسسة بخدمة عملائها ومساعدتهم في نقل العفش المخصص بهم حتى ولو كانوا سيقومون بنقل قطعة أثاث واحدة.
O أن تقوم المؤسسة بتقديم أفضل عروض الأثمان والتي تميزها عن بقية المؤسسات مضاهاة بما تقدمه من خدمات.
O ان يكون للشركة قطاع خدمة زبائن لاستقبال التظلمات وحل المشاكل واستقبال ال feedback وعلى ذلك تنقيح الخدمة التى تقدمها المؤسسة.
O تقديم الضمان التام من المؤسسة بالقيام بإصلاح مختلَف الأضرار ومعالجة التلفيات التي تتم خلال نقل أثاثتنظيف البيت
كيفية تنظيف بقع الدهون
جدول تنظيف البيت
ترتيب المنزل بسرعة
c programming code examples
ReplyDeletec programming sample | Empty recycle bin
This comment has been removed by the author.
ReplyDeleteThis is nice blog and helpful...
ReplyDeleteslime shop
Developer tip: Never use "using namespace". Its a bad programming habit. If you do this, somebody that take your code will not know where the functions come from.
ReplyDelete
ReplyDelete5
شركة تخزين اثاث بالدمام
شركة نقل عفش من الرياض الى الدمام
شركة نقل عفش من الرياض الى المدينة المنورة
شركة نقل عفش من الرياض الى ابها
شركة نقل عفش من الرياض الى جازان
شركة شحن عفش من الرياض الى سلطنة عمان
شركة شحن عفش من الرياض الى البحرين
_______________________________________