OpenCV で SLIC を使用して画像をセグメント化しようとしています。次の機能を使用しようとしています:
void vl_slic_segment ( vl_uint32 * segmentation,
float const * image,
vl_size width,
vl_size height,
vl_size numChannels,
vl_size regionSize,
float regularization,
vl_size minRegionSize
)
#include は問題なく、ライブラリへのリンクも問題ありません。この関数に画像を渡す方法を知る必要があります。この関数の画像パラメーターは型float const *
であり、画像をこの型に変換する方法がわかりません。
画像をコードにロードする方法は次のとおりです。
IplImage *image = cvLoadImage("train.tif", 1);
ここにコード全体があります:
extern "C" {
#include </home/me/Downloads/vlfeat-0.9.17/vl/slic.h>
}
#include <stdio.h>
#include <iostream>
#include <string>
#include <opencv2/opencv.hpp>
#include<opencv/highgui.h>
using namespace std;
using namespace cv;
int main () {
IplImage *image = cvLoadImage("train.tif", 1);
vl_uint32 * seg;
vl_slic_segment(seg,(const float *)image,image->width,image->height,image->nChannels,15,0.1,1);
waitKey(0);
}
vl_uint32 * seg
また、正しく使用しているかどうかもわかりません。誰かがこのセグメンテーションを行うための例またはサンプル コードを持っている場合はお願いします。
ありがとう !!