opencv中的不同通道
Different channels in opencv
我对OpenCV
很陌生,我正在尝试理解其中的一些概念。
我已经声明了两个 Mat
对象 mRgba
和 mRgb
mRgba = new Mat(height,width, CvType.CV_8UC4);
mRbg = new Mat(height, width, CvType.CV_8UC3);
@Override
public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame inputFrame) {
mRgba = inputFrame.rgba();
mRbg = inputFrame.rgba();
Log.i(TAG, "mRgba.channels() : " + mRgba.channels());
Log.i(TAG, "mRbg.channels() : " + mRbg.channels());
}
我得到两个通道的输出。如何获得 3 通道 Mat
?
文档没有帮助。
您的作业将 mRgba 和 MRgb 变成了 inputFrame.rgba() 的精确副本,这就是您没有得到想要的结果的原因。
我不知道如何转储 alpha 通道,我只是编写一个循环并逐个元素地执行它。 Crete mRgb 带零,然后从 mRgba 分配。
我对OpenCV
很陌生,我正在尝试理解其中的一些概念。
我已经声明了两个 Mat
对象 mRgba
和 mRgb
mRgba = new Mat(height,width, CvType.CV_8UC4);
mRbg = new Mat(height, width, CvType.CV_8UC3);
@Override
public Mat onCameraFrame(CameraBridgeViewBase.CvCameraViewFrame inputFrame) {
mRgba = inputFrame.rgba();
mRbg = inputFrame.rgba();
Log.i(TAG, "mRgba.channels() : " + mRgba.channels());
Log.i(TAG, "mRbg.channels() : " + mRbg.channels());
}
我得到两个通道的输出。如何获得 3 通道 Mat
?
文档没有帮助。
您的作业将 mRgba 和 MRgb 变成了 inputFrame.rgba() 的精确副本,这就是您没有得到想要的结果的原因。
我不知道如何转储 alpha 通道,我只是编写一个循环并逐个元素地执行它。 Crete mRgb 带零,然后从 mRgba 分配。