图像处理ASIC设计方法 笔记2 图像边界镜像处理

这本书是图像处理方面ASIC与DSP比较,讲了为什么要用ASIC做图像处理,它的特点和适用场景。读到第一章,(计算卷积的)工作窗口位于图像边界时镜像扩展后的情况。

输入仍然是逐行逐列串行图像数据流,但是在工作窗口内部,根据窗口中心像素的坐标判断窗口位于图像边界的具体位置,由此决定窗口中某个寄存器的值是来自原先的移位寄存器,还是来自与之镜像行/列的寄存器。

每行有一个行缓存。许多单独的寄存器,还有多路选择器,组成了工作窗口位于图像边界时镜像扩展的电路图(schematic)。
核心思路是:多路选择器,有许多个,根据中心像素位于第几行,选择对应的选通支路。

补充网上查到的另一个角度的策略:
图像的镜像用FPGA 实现,共有四种模式:
Mode1: 原图,
Mode2:全镜像,
Mode3:水平镜像,
Mode4:垂直镜像。

Verilog实现镜像源码:

bash 复制代码
`timescale1ns / 1ps  


module mirror #(  

parameter DW = 8,  

parameter IW = 1920,  

parameter IH = 1080,  

parameter MODE = 0 //0 1 2 3  

)  

(  

input                        pixelclk,  

input                        reset_n,  

input                        i_hsync,  

input                        i_vsync,  

input                        i_de,  

input  [DW*3-1:0]            din,  

input    [11:0]              hcount,//x  

input    [11:0]              vcount,//y  


output    [11:0]             hcount_t,//xt  

output    [11:0]             vcount_t,//yt  

output                       o_hsync,  

output                       o_vsync,  

output                       o_de,  

output  [DW*3-1:0]           dout  

);  


assign o_hsync = i_hsync;  

assign o_vsync = i_vsync;  

assign o_de    = i_de;  

assign dout    = din;   


assign hcount_t = (MODE == 0)?hcount:  

                            (MODE == 1)?(IW-1)-hcount:  

                            (MODE == 2)?(IW-1)-hcount:hcount;  

assign vcount_t = (MODE == 0)?vcount:  

                                (MODE == 1)?(IH-1)-vcount:  

                                (MODE == 2)?vcount:(IH-1)-vcount;     


endmodule
相关推荐
QXWZ_IA13 分钟前
定位数据怎么推给 IoT 平台?消息协议选型与接入准备
网络·人工智能·物联网·安全
java_logo15 分钟前
Docker 部署 ReMe:轻松搭建 AI Agent 记忆管理平台
人工智能·docker·容器·ai agent·轩辕镜像·reme·agentscope-ai
硅谷秋水33 分钟前
从VLM规划器到机器人智能体:面向依赖历史信息的操控任务自演化框架
人工智能·机器学习·语言模型·机器人
小李不想当小白34 分钟前
HAL库之UART(STM32 HAL库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
西安小哥40 分钟前
端侧跑大模型,真正的门槛不在参数量:一次 596 秒到 10 秒的压缩路径复盘
前端·人工智能
Vex2une41 分钟前
AI 渲染正在重写游戏美术的账本:提效、外包与新的门槛
人工智能·aigc·游戏美术·神经渲染·dlss 5·ai 渲染·游戏开发门槛
LabVIEW开发1 小时前
AI 如何接进 LabVIEW:链路怎么搭、边界在哪、还差什么
人工智能·驱动开发·labview
liferecords1 小时前
不训练一个参数,把图像编辑器变成视频编辑器:EditVid 的局部-全局拆解术
人工智能·llm·aigc·多模态
装不满的克莱因瓶1 小时前
【SpringAI Alibaba】ReactAgent响应SSE实时流式传输案例实战
java·人工智能·ai·sse·springai
旖旎夜光2 小时前
【C++ 基础入门】C++ 多态(中):虚函数表、多态原理与动静绑定
开发语言·c++·笔记·学习