Skip to content

GraphCutSeamFinders find() method returns None instead of masks #20945

@lukasalexanderweber

Description

@lukasalexanderweber

At least the Python bind of GraphCutSeamFinders find() method returns -> None.

Graph Cut Seam finding was therefore removed from stitching_detailed.py in dbd65a3.

However, on the long run, GraphCutSeamFinder should return the respective masks and also be integrated into stitching_detailed.py again.

In comparison, DpSeamFinders find() does not state any return values, however it implements SeamFinder and hence it's find() method, which returns -> masks

Detail:

I looked into the code and also noticed that GraphCutSeamFinder is not even a valid entry of createDefault():

Ptr<SeamFinder> SeamFinder::createDefault(int type)
{
    if (type == NO)
        return makePtr<NoSeamFinder>();
    if (type == VORONOI_SEAM)
        return makePtr<VoronoiSeamFinder>();
    if (type == DP_SEAM)
        return makePtr<DpSeamFinder>();
    CV_Error(Error::StsBadArg, "unsupported seam finder method");
}

Is this intentional behavior?
GraphCutSeamFinder is the only Finder which is defined explicitly as class (line 1108), while the others are pointers.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions