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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8141|回復: 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 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品日韩在线 | 蜜桃视频一区二区三区 | 一区二区中文字幕 | 国产精品久久久久久吹潮 | 午夜视频在线观看一区二区 | 国产欧美一区二区三区日本久久久 | 久久久久久久久久爱 | 一区二区三区视频在线观看 | 另类视频区 | 久久精品在线 | 自拍偷拍亚洲欧美 | 亚洲美女网站 | 福利社午夜影院 | 国产在线中文字幕 | 国产一区二区 | 视频一区二区在线观看 | 亚洲情综合五月天 | 在线成人免费视频 | 国产精品日韩欧美一区二区三区 | 999免费观看视频 | 日韩国产在线 | 国产精品不卡视频 | 黄一级| 久久久久久亚洲 | 一级电影免费看 | 一级黄色片免费 | 久久久久久成人 | 精品国产一区二区三区久久久蜜月 | 91精品国产91久久久久久 | 九九热免费视频在线观看 | 亚洲国产成人久久久 | 日韩一区二区三区在线观看 | 在线看亚洲 | 99reav| 2022精品国偷自产免费观看 | 成人精品一区二区三区中文字幕 | 天堂素人约啪 | 亚洲欧洲成人 | 欧美视频一区 | 成人国产免费观看 | 成人激情视频在线 |