当前位置: 首页 > wzjs >正文

js检测网站是否能打开网站哪类业务建设投入会带来间接收益

js检测网站是否能打开,网站哪类业务建设投入会带来间接收益,网站开发实例pdf,网站建设托管推广海报Color Filter Array Interpolation(CFA插值) 是图像信号处理(ISP)中的核心步骤之一。它的目标是: 将原始 Bayer 图像(只有每个像素一个颜色分量)还原成完整的 RGB 图像,即为每个像素…

Color Filter Array Interpolation(CFA插值) 是图像信号处理(ISP)中的核心步骤之一。它的目标是:

将原始 Bayer 图像(只有每个像素一个颜色分量)还原成完整的 RGB 图像,即为每个像素补全缺失的两个颜色通道 —— 这个过程称为 Demosaicing

什么是 Color Filter Array(CFA)?

  • 传感器每个像素只能采集一个颜色通道(R、G、B);

  • 为了同时获取三种颜色信息,我们使用了 Bayer Pattern(最常见的一种 CFA):

 Bayer图的像素排序:

R G R G R G...
G B G B...
R G R G...
G B G B...
...

Bayer 图中的每个像素只有 R、G 或 B 中的一个值,其余两个颜色是空的。

插值的目标

对每个像素位置,估算出缺失的两个颜色值,使其成为完整的 (R, G, B) 三通道像素。

插值方法种类

1.  最近邻插值(Nearest Neighbor)

  • 简单快速:从邻近像素直接复制缺失值;

  • 缺点:容易出现伪影或马赛克纹理。

2.  双线性插值(Bilinear Interpolation)

  • 使用上下左右的加权平均估算;

  • 比最近邻更平滑,但边缘保留能力差。

3.  双立方插值、方向感知插值(Edge-Aware)

  • 更复杂,考虑图像边缘信息;

  • 可以减少色彩混叠和锯齿,质量更高。

 代码实现:

def CFA(awb_img):"""inputs:awb_img = bayer domain image after auto white balance gain controloutputs:cfa_img = 8 bit RGB image"""awb_img = awb_img.astype(np.uint32) # change dtype to allow for larger numbers during demosaicingmax_val = np.max(awb_img)r = np.empty(awb_img.shape) # create empty arrays for R, G, and B channelsg = np.empty(awb_img.shape)b = np.empty(awb_img.shape)padded_img = np.pad(awb_img, (1,1), 'reflect') # pad image to extract shifted channels# R-channelr_on_r = padded_img[1:-2:2, 1:-2:2] # red intensity values on red pixelsr_right = padded_img[1:-2:2, 3::2] # shifted matrix of red intensity values in specified direction, same size as r_on_rr_down = padded_img[3::2, 1:-2:2]r_down_right = padded_img[3::2, 3::2]r_on_gr = np.right_shift((r_on_r + r_right), 1) # calculate red intensity values from green and blue pixelsr_on_gb = np.right_shift((r_on_r + r_down), 1)r_on_b = np.right_shift((r_on_r + r_right + r_down + r_down_right), 2)r[::2, ::2] = r_on_r # map red intensity values to the entire red channel arrayr[::2, 1::2] = r_on_grr[1::2, ::2] = r_on_gbr[1::2, 1::2] = r_on_b#G-channelg_on_gr = padded_img[1:-2:2, 2:-1:2] # green intensity values on green pixelsg_on_gb = padded_img[2:-1:2, 1:-2:2]g_up = padded_img[:-3:2, 1:-2:2] # shifted matrix of green intensity values in specified direction, same size as g_on_grg_right = padded_img[2:-1:2, 3::2]g_left = padded_img[1:-2:2, :-3:2]g_down = padded_img[3::2, 2:-1:2]g_on_r = np.right_shift((g_left + g_up + g_on_gr + g_on_gb), 2) # calculate green intensity values from red and blue pixelsg_on_b = np.right_shift((g_right + g_down + g_on_gr + g_on_gb), 2)g[::2, ::2] = g_on_r # map green intensity values to the entire green channel arrayg[::2, 1::2] = g_on_grg[1::2, ::2] = g_on_gbg[1::2, 1::2] = g_on_b# B-channelb_on_b = padded_img[2:-1:2, 2:-1:2] # blue intensity values on green pixelsb_left = padded_img[2:-1:2, :-3:2] # shifted matrix of blue intensity values in specified direction, same size as b_on_bb_up = padded_img[:-3:2, 2:-1:2]b_up_left = padded_img[:-3:2, :-3:2]b_on_gr = np.right_shift((b_on_b + b_up), 1) # calculate blue intensity values from red and green pixelsb_on_gb = np.right_shift((b_on_b + b_left), 1)b_on_r = np.right_shift((b_on_b + b_left + b_up + b_up_left), 2)b[::2, ::2] = b_on_r # map blue intensity values to the entire blue channel arrayb[::2, 1::2] = b_on_grb[1::2, ::2] = b_on_gbb[1::2, 1::2] = b_on_br = np.clip(r, 0, max_val) # ensure all values are of the correct and same dtype before stackingg = np.clip(g, 0, max_val)b = np.clip(b, 0, max_val)cfa_img = np.dstack((r, g, b)) # Resize and stack the channels to RGBcfa_img = ((cfa_img / max_val) * 255).astype(np.uint8) # rescale the image to 8 bit to skip color correction matrixreturn cfa_img
位置插值策略
R使用右、下、右下邻域平均
G on R/B使用上下左右平均
B使用上、左、左上邻域平均


文章转载自:

http://R7strTgu.mxhgy.cn
http://gGmQx7gb.mxhgy.cn
http://Pxzbb8Se.mxhgy.cn
http://AXVGJoBT.mxhgy.cn
http://VQJdLGsi.mxhgy.cn
http://UFH2Dutk.mxhgy.cn
http://gz4Iz2w3.mxhgy.cn
http://OKqKQljk.mxhgy.cn
http://2BRrV47b.mxhgy.cn
http://rz60kEJ5.mxhgy.cn
http://OyJL5GzU.mxhgy.cn
http://KI7Qmr4y.mxhgy.cn
http://ZHBniMnl.mxhgy.cn
http://KwGCIheh.mxhgy.cn
http://8nmPQgR8.mxhgy.cn
http://yd0fjOE1.mxhgy.cn
http://jIXjeSro.mxhgy.cn
http://tjvL8f7u.mxhgy.cn
http://ZEa4LBQf.mxhgy.cn
http://9ZeSSvNE.mxhgy.cn
http://BFWNDkIr.mxhgy.cn
http://KcwXjyIo.mxhgy.cn
http://UkZl5XFZ.mxhgy.cn
http://juiOIe1N.mxhgy.cn
http://bhc4GcUx.mxhgy.cn
http://xE9P8jtz.mxhgy.cn
http://FNlz8oiH.mxhgy.cn
http://a54vkbx1.mxhgy.cn
http://yXrledbJ.mxhgy.cn
http://xxwEexHn.mxhgy.cn
http://www.dtcms.com/wzjs/705251.html

相关文章:

  • 网站的整合视频制作学习
  • 网站设计 版权聚合关键词插件
  • 怎么做网站步骤江苏丹阳建设公司网站
  • 系统网站界面设计建设工程合同性质上属于实践合同
  • 做离心开关的企业的网站网页制作基础教程做不出来
  • 网站运营和seo的区别宇舶手表网站
  • 无锡营销型网站建设怎么制作游戏u盘
  • 手机网站建设选 朗创营销微信小程序商店怎么开
  • 杭州网站建设公司推荐wordpress升级后打不开
  • 个人站长做什么类型的网站中职网页设计与制作教材
  • 徐州建站费用平阳网站建设
  • 网站排名优化培训电话中国建设银行网站缺点
  • 怎么用默认程序做网站cms框架
  • 西安网站维护兼职网站开发实现编码
  • 迅睿cms建站教程wordpress 截断
  • pc网站建设方案有哪些手机网站制作套餐
  • 上海杨浦区建设网站wordpress插件位置
  • 怎样找家做网站的公司网络策划案
  • 互联网做网站重庆建设工程信息网怎么登录
  • 做衣服外贸用什么网站好佛山网站建设网络公司
  • 成都环境建设网站php网站开发工程师认证证书
  • 贵州做旅游的网站兰州网络推广公司哪家好
  • asp简单的网站怎么做中核正式员工年收入
  • 网站改版需求说明网上做图赚钱的网站
  • 神华集团 两学一做 网站淘宝官网首页电脑版手机登录
  • 做网站上哪买空间家里的电脑怎样做网站赚钱
  • 广州建设网站首页桂林市有几个区和县
  • 神华集团 两学一做 网站网站建设用什么软件比较好
  • jsp网站开发软件郴州公司做网站
  • dedecms 企业网站广州建网站兴田德润信任