使用map-reduce平滑图像



我有一个图像,其每个像素的RGB值存储在二维数组中。假设我想应用一个基本的3X3平均算法来平滑图像。如何使用map-reduce范式实现这样的算法?

这花了我一段时间来思考mapreduce范式,但无论如何,这里是-

<

地图任务/strong>

Input - (x坐标,y坐标,RGB值)

输出- 9元组是这些{(x, y, RGB), (x - 1, y, RGB), (x - 1, y-1 RGB), (x, y-1 RGB), (x + 1 y-1 RGB), (x + 1, y, RGB), (x - 1, y + 1, RGB), (x, y + 1, RGB), (x + 1, y + 1, RGB)}

<

减少任务/strong>

框架将根据键(x坐标,y坐标)对所有这些元组进行排序并重新排列。现在对于每个像素,你有9个相邻像素的RGB值。我们简单地在reduce任务中取其平均值并输出一个元组----> (x,y,avg_RGB)

基本上不是每个像素告诉它所有相邻像素的RGB值,它广播它自己的RGB值作为它邻居的像素值。

希望这对你有帮助

相关内容

  • 没有找到相关文章

最新更新