QT ¿ò¼ÜÖпìËÙÓ¦ÓÃOpenCV ÊDZ¾ÎÄÒª½áÊøµÄÄÚÈÝ£¬ºÍMFC±È½ÏÆðÀ´£¬QTµÄÐźŲۻúÖÆ±ÈMFCµÄÐźŻúÖÆÂý£¬µ«ÊÇÒòΪÄܺܺõÄʵÏÖ¿çÆ½Ì¨£¬ËùÒÔÎÒÔÚÕâÀï×ܽáһϿÉÄܶÔһЩÈËÓеãÓá£
0´î½¨»·¾³£ºOpenCV + QT 4.6
ÎÒµÄʵÑéÊÇ»ùÓÚVS2008À´×öµÄ£¬QT¹Ù·½ËäÈ»ÌṩÁËVS2008-add-inµÄ²å¼þ£¬ÎÒûÓÐÓá£Ö±½ÓÏÂÔØÆ÷±àÒëºÃµÄ¿âÎļþ½øÐÐÅäÖÃ,OpenCVµÄÔÚVS2008ÏÂÃæµÄÅäÖ÷½·¨Googleһϵ½´¦¶¼ÊÇ£¬ÕâÀï²»ÔÙ²¹³ä¡£Ê×ÏÈÐèÒª×öµÄÊÇÔÚVS2008ÀïÃæÄãÐèҪʹQTϺÍOpenCVµÄ³ÌÐòÄÜ·Ö±ðÅÜÆðÀ´¡£¶ÔÓÚQTÔÚVSµÄÅäÖÃÆäʵͦ¼òµ¥£¬ÓÐÍ·ÎļþºÍÏàÓ¦µÄÁ´½Ó¿â£¬±£Ö¤µ÷ÓõÄʱºò·¾¶ÕýÈ·£¬Ò»°ã¾ÍûÓÐÎÊÌâÁË¡£³£ÓÃÃüÁîÐÐmake³ÌÐòµÄÈËÓ¦¸Ã»áºÜÇå³þÄÇЩIDEÖ»²»¹ýÊÇ²ã»Æ¤¡£
1.ÏÔʾͼÏñ
QWidgetÊÇQObjectϵĵÚÒ»¸ö×ÓÀ࣬ʹÓÃËüÏÔʾͼÏñ»á¼õÉÙ²»±ØÒªµÄ¿ªÏú¡£Ê×Ïȶ¨ÖÆÒ»¸ö×Ô¼ºÐèÒªµÄQWidget£º
ÐèÒª»æÖÆÒ»¸öͼÏñ£¬ÎÒÖØÔØpaintEvent(QpaintEvent *e)£¬ÎÒÔÚÕâÀïÃæÊ¹ÓÃQPainter½øÐлæÖÆ¡£
rawImage(QPoint(5,5),qImg);µÄ×÷ÓÃÊǽ«qImg»æÖÆÔÚ×óÉ϶¥µãλÓÚQPoint(5,5)´¦¡£
ÕâÀïÃæÓпÉÄÜÁ½¸öÎÊÌ⣬µÚÒ»¸öÎÊÌâÊÇÒªÏÔʾµÄͼƬ̫С£¬´´½¨µÄWidgetÌ«´ó£¬×îºóÏÔʾ±È½Ï³óª¡£Õâʱ¿ÉÒÔÔڴ˺¯ÊýÀïÃæ»ñµÃqImgµÄ¿í¸ß£¬È»ºóresizeһϾͺÃÁË¡£ÁíÍâÒ»¸öÎÊÌâÊÇ£º»æÖƵÄʱºòʹÓõÄÊÇQImage£¬²»ÊÇIplImageÀàÐÍ¡£¹ØÓÚÕâ¸öÎÊÌâÂÛ̳ÉÏÓÐÈËרÃÅдÁËIplImage <-> QImageµÄת»»´úÂ룬ÎÒÔÚÕâÀï²»ÖØ¸´ÄǸö×ö·¨£¬Ò»ÊÇÓÐÈËÒѾ×öÁË£¬ÁíÍâ´¦ÓÚЧÂÊ¿¼ÂÇ£¬ÕâÀïÌṩÁíÒ»ÖÖ·½·¨¡£
ͨ³£Í¬Ñ§ÃǶ¼ÊÇÓÃcvLoadImageÀ´¶ÁͼƬ£¬±£´æÔÚIplImageÀïÃæ£¬ÔÚÕâÀïÕâ¸öͼƬÎÒÃDZ£´æÔÚimgÀïÃæ£¬È»ºóͨ¹ýimg´«½øQWidget£¬È»ºóÎÒnewÒ»¸öQImage
ÎÒÕâÀï¼ÙÉèiplImgÊÇRGB¸ñʽ£¬ÇÒÿ¸öͨµÀ´óСΪ8¡£È»ºó´´½¨Ò»¸öIplImage µÄÎļþÍ·
´ËiplImageºÍQImageµÄ²»Í¬Ö®´¦ÔÚÓÚQImageûÓÐÖ±½ÓÌṩ´´½¨ÎļþÍ·µÄ·½·¨£¬¿ÉÒÔͨ¹ýÈçÏ·½Ê½´´½¨Ö»ÓÐÎļþÍ·Êý¾ÝµÄQImage
ÁíÍâÁ½ÕßµÄͼÏñ¾ØÕóÏñËØÅÅÁÐÓе㲻ͬ£¬±ÈÈçIplImageÖеÄBGRµ½ÁËQImageÖÐÓ¦¸ÃÊÇRGB£¬µ±È»µ¥Í¨µÀµÄ»Ò¶ÈͼÊÇÒ»ÑùµÄ£¬ÖµµÃÇìÐÒµÄÊÇÁ½ÕßµÄÏñËØ¾ØÕó¶¼ÊÇÐÎ×´ÏàͬµÄ¶àάÊý×é¡£ÕâÑùÎÒÃÇ¿ÉÒÔͨ¹ýÖ¸Õë¹²ÏíÕⲿ·ÖÊý¾Ý£¬Ò»ÖÖ·½·¨ÈçÏ£º
½«iplImgµÄͼÏñ¾ØÕóÖ¸µ½qImgÄÇÀÒÔºóÎÒÃÇÖ»ÐèÒª¶ÔIplImageÔËÓÃopencvÀïÃæµÄº¯Êý½øÐд¦Àí£¬Æäʵ¾ÍÖ±½ÓÔÚ´¦ÀíqImgÀïÃæµÄÊý¾ÝÁË¡£µ«ÊÇÏÖÔÚµÄͼÏñÊý¾Ý»¹ÔÚimgÀïÃæ£¬Ê×ÏȵðÑÊý¾Ý¸ãµ½ÊÖ£¬È»ºó·Åµ½iplImgºÍqImgµÄ¹²ÏíÇøÖÐÈ¥£¬ÁíÍ⽫ÑÕÉ«ÅÅÁÐÒÔQImageÖеÄRGB˳ÐòΪ±ê×¼¡£
ʵ¼ÊÉÏÖ»Òª×öµ½ÕâÀïͼƬ¾ÍÄÜÏÔʾÁË¡£ÈçÏÂͼËùʾ

¸ø³ömyWidget.cppÍêÕû´úÂë
µ÷ÓõĴúÂëºÜ¼òµ¥£º