首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >戈夫!Rgb到灰度

戈夫!Rgb到灰度
EN

Stack Overflow用户
提问于 2019-03-21 01:37:37
回答 1查看 537关注 0票数 0

我很难把图像转换成灰度,你能帮我吗?我是围棋和围棋的新手,但是我在图像处理上做了一个学期,我正在做一个最好的项目,在7个不同的地方拿一些补给品。

代码语言:javascript
复制
package main

import (
    "gocv.io/x/gocv"
    "path/filepath"
)

func main() {
    pizzaPath := filepath.Join("Mars.bmp")
    window := gocv.NewWindow("Hello Mars")
    windowB := gocv.NewWindow("Hello Gray Mars")

    MarsImg := gocv.NewMat()
    Marsgray := gocv.NewMat()

    MarsImg = gocv.IMRead(pizzaPath, gocv.IMReadColor)
    Marsgray = gocv.ConvertTo(*Marsgray,0) 

    window.IMShow(MarsImg)
    window.WaitKey(0)

    windowB.IMShow(Marsgray)
    windowB.WaitKey(0)
}
EN

回答 1

Stack Overflow用户

发布于 2022-06-08 21:00:57

这个问题很古老,但仍然出现在“搜索”( search results...so )中,以下是对我有用的答案:

  1. 使用gocv.CvtColor(marsImg, &marsGray, gocv.ColorBGRToGray)而不是marsImg.ConvertTo(&marsGray, 0)将其转换为灰度
  2. 确保在参数列表中传递指向灰度表(即&marsGray)的指针,而不是传递Mat的值(即*marsGray)。

这个例子很有用:Thresholding/README.md#colorspaces

下面是对为我工作的原始代码的一些小修改(为了简单起见,在当前目录中使用Mars.png ):

代码语言:javascript
复制
import (
    "gocv.io/x/gocv"
)

func main() {
    window := gocv.NewWindow("Hello Mars")
    windowB := gocv.NewWindow("Hello Gray Mars")

    marsImg := gocv.IMRead("./Mars.png", gocv.IMReadColor)
    marsGray := gocv.NewMat()

    gocv.CvtColor(marsImg, &marsGray, gocv.ColorBGRToGray)

    window.IMShow(marsImg)
    windowB.IMShow(marsGray)
    windowB.WaitKey(0)
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55272566

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档