Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[WinAPI] [OpenCV] Jak połączyć wybierałkę plików OPENFILENAME z funkcją imread z OpenCV?

Ostatnio zmodyfikowano 2013-08-14 21:49
Autor Wiadomość
Mitu
Temat założony przez niniejszego użytkownika
[WinAPI] [OpenCV] Jak połączyć wybierałkę plików OPENFILENAME z funkcją imread z OpenCV?
» 2013-08-14 20:49:22
C/C++
case ID_FILE_OPEN:
ZeroMemory( & ofn, sizeof( ofn ) );
ofn.lStructSize = sizeof( ofn ); // SEE NOTE BELOW
ofn.hwndOwner = hWnd;
ofn.lpstrFilter = _T( "PNG Files (*.png)\0*.png\0" );
ofn.lpstrFile = szFileName;
ofn.nMaxFile = MAX_PATH;
ofn.Flags = OFN_EXPLORER | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;;\

if( GetOpenFileName( & ofn ) )
{
    image = cv::imread( charFileName, CV_LOAD_IMAGE_COLOR );
    cv::namedWindow( charFileName, CV_WINDOW_AUTOSIZE );
    cv::imshow( "Display window", image );
}

Pojawia się taki problem, że otrzymana ścieżka do pliku jest w formacie wchar_t, natomiast ścieżkę do funkcji wczytującej plik png muszę podać w formacie char.

Ma ktoś jakiś pomysł jak się z tym uporać? Może być inne rozwiązanie, które pozwoli mi wygodnie wczytywać pliki z dysku do zmiennej cv::Mat.
P-90305
pekfos
» 2013-08-14 20:51:11
GetOpenFileNameA(), OPENFILENAMEA. Możesz też konwertować, na przykład, funkcją wcstombs() z <cstdlib>.
P-90307
Mitu
Temat założony przez niniejszego użytkownika
» 2013-08-14 21:49:21
Dzięki, wszystko ładnie teraz śmiga :)

P-90318
« 1 »
  Strona 1 z 1