久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8180|回復: 9
收起左側

基于stm32的攝像頭ov7670顏色識別源碼

  [復制鏈接]
ID:371148 發表于 2018-7-13 20:32 | 顯示全部樓層 |閱讀模式
//讀取某點的顏色
static void ReadColor( uint16_t usX, uint16_t usY, COLOR_RGB* color_rgb )
{
        unsigned short rgb;
        
        rgb = LCD_ReadPoint( usX, usY );                                        //獲取顏色數據
        
        //轉換成值域為[0,255]的三原色值
        color_rgb->Red                 = (unsigned char)( ( rgb & 0xF800 ) >> 8 );
        color_rgb->Green  = (unsigned char)( ( rgb & 0x07E0 ) >> 3 );
        color_rgb->Blue         = (unsigned char)( ( rgb & 0x001F ) << 3 );        
}
/*************************************/
//RGB轉換為HLS
//H:色度
//L:亮度
//S:飽和度
static void RGB2HSL( const COLOR_RGB* color_rgb, COLOR_HLS* color_hls )
{
        int r, g, b;
        int h, l, s;
        int max, min, dif;
        
        r = color_rgb->Red;
        g = color_rgb->Green;
        b = color_rgb->Blue;
        
        max = maxOf3Values( r, g, b );
        min = minOf3Values( r, g, b );
        dif = max - min;
        
        //計算l,亮度
        l = ( max + min ) * 240 / 255 / 2;
        
        //計算h,色度
        if( max == min )//無定義
        {
                s = 0;
                h = 0;
        }
        else
{
                //計算色度
                if( max == r )
                {
                        if( min == b )//h介于0到40
                        {
                                h = 40 * ( g - b ) / dif;
                        }
                        else if( min == g )//h介于200到240
                        {
                                h = 40 * ( g - b ) / dif + 240;
                        }
                        
                }
                else if( max == g )
                {
                        h = 40 * ( b - r ) / dif + 80;
                }
                else if( max == b )
                {
                        h = 40 * ( r - g ) / dif + 160;
                }
               
                //計算飽和度
                if( l == 0 )
                {
                        s = 0;
                }
                else if( l <= 120 )
                {
                        s = dif * 240 / ( max + min );
                }
                else

{
                        s = dif * 240 / ( 480 - ( max + min ) );
                }                 
        }   
    color_hls->Hue = h;                                                        //色度
        color_hls->Lightness = l;                                //亮度
        color_hls->Saturation = s;                        //飽和度
}


攝像頭(顏色捕捉).rar

395.78 KB, 下載次數: 236, 下載積分: 黑幣 -5

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:249033 發表于 2018-9-9 22:59 | 顯示全部樓層
東西很好,值得學習
回復

使用道具 舉報

ID:406408 發表于 2018-10-11 17:57 來自觸屏版 | 顯示全部樓層
學習了
回復

使用道具 舉報

ID:408914 發表于 2018-10-13 11:35 | 顯示全部樓層
附件里哪有文件???
回復

使用道具 舉報

ID:138247 發表于 2019-5-14 10:38 | 顯示全部樓層

感謝樓主分享。。。
回復

使用道具 舉報

ID:352616 發表于 2019-5-18 22:07 | 顯示全部樓層
敢問使用stm32f1還是f4
回復

使用道具 舉報

ID:499932 發表于 2019-7-11 11:23 | 顯示全部樓層
怎么更改識別的顏色,現在只能識別綠色
回復

使用道具 舉報

ID:324282 發表于 2019-7-28 13:30 | 顯示全部樓層
非常好用
回復

使用道具 舉報

ID:322437 發表于 2019-8-1 21:01 | 顯示全部樓層
樓主有沒有一些原理的簡單介紹
回復

使用道具 舉報

ID:290226 發表于 2019-8-3 19:28 | 顯示全部樓層
柏禺 發表于 2019-7-11 11:23
怎么更改識別的顏色,現在只能識別綠色

我的能識別藍色,哥,換下代碼嘛。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本黄色一级视频 | 伊人久久亚洲 | 日本在线看 | 国产精品久久久一区二区三区 | 国产香蕉视频 | 国产午夜精品一区二区三区 | 伊人久久大 | 天天爱天天色 | 久草这里只有精品 | 欧美三级精品 | 日韩影音 | 思思在线视频 | 国产一级免费观看 | 亚洲视频中文字幕 | 日本一级淫片色费放 | 亚洲免费一区二区 | 亚洲午夜一区 | 伊人网在线播放 | 久久精品人人 | 在线观看的av网站 | 日本高清在线观看 | 亚洲一区中文 | 黄色大片av | 中文在线字幕免费观看 | 欧美激情网 | av网址在线播放 | 久久国产精 | 欧美日韩一二三 | 国产精品成人一区二区三区 | 婷婷综合色 | 欧美又大又硬又粗bbbbb | 日日骚av| 特级淫片裸体免费看 | 黄色在线免费 | 久久精品国产视频 | 午夜看片 | 久久国产美女 | 色婷婷基地| 日韩欧美精品一区 | 国产黄色免费网站 | 五月婷婷六月丁香 |