Matlab toolbox for mapping and measuring river planform changes. This toolbox was constructed to help analyze changing river planforms (aerial views). Given a binary mask of a river, tools are provided to efficiently compute - channel centerline - banklines - channel width (two methods) - centerline direction - centerline curvature If multiple input mask images contain georeference information, a tool is provided to "stitch" the masks together--before or after analysis. Stitching can be done for both images and vectors of x,y coordinates. The mapping toolbox is required for this functionality. If multiple masks (realizations) of the river are available, RivMAP includes tools to - compute centerline migrated areas - compute erosional and accretional areas - identify cutoff areas and quantify cutoff length, chute length, and cutoff area - generate channel belt boundaries and centerline - measure and map changes (in width, migration areas or rates, centerline elongation, accreted/eroded areas) in space and time

planform changemeander migrationriver migrationwidthcenterlinespacetime mapping



Initial contribute: 2021-09-15


University of Minnesota
Is authorship not correct? Feed back


Application-focused categoriesNatural-perspectiveLand regions
Application-focused categoriesIntegrated-perspectiveGlobal scale

Detailed Description

English {{currentDetailLanguage}} English

RivMAP provides tools for quantifying static planform geometries from binary channel masks including centerline and bankline extractions, widths, lengths, angles, and curvatures. It also provides functions to measure changes in time, including centerline and bankline migrated areas, areas of erosion and accretion, and cutoff identification, and creates reference grids for mapping these changes. No graphical user interface (GUI) is currently offered, but functions are written intuitively and well commented for ease of customization and appli- cation to specific research questions. RivMAP relies primarily on MATLAB’s built-in image-processing morphological operations, such as erosion, dilation, hole-filling, skeletonization, and distance transforms, to efficiently compute relevant outputs from channel masks. While most of the tools included in RivMAP may be also found in other packages, some of its tools offer innovative solutions to image-based processing problems. The construction of a grid for space-time mapping (section 4.5) a novel method for mapping high temporal resolution planform changes. RivMAP also contains a function to stitch together georeferenced imagery so that results may be recombined for postprocessing. The following sections describe the technical details of RivMAP functions. A link to download RivMAP and a demo with data from the R6 subregion of the Ucayali River are provided in the acknowledgements.

The RivMAP tool for obtaining a centerline from an image mask (centerline_from_mask) requires only two inputs: a channel mask and a two-character variable (exit_sides) that denotes the sides which the channel enters (upstream) and leaves (downstream) the image. (RivMAP does not currently support cases where the river enters and leaves the image on the same side.) First, holes in the input mask are filled, and any areas of the mask not connected to the main channel are removed. The mask is then skeletonized by evenly eroding its boundaries without breaking its connectivity [Lam et al., 1992;Pavelsky and Smith, 2008;Kieler et al., 2009; Fisher et al., 2013]. Skeletonization resolves the centerline well but poses two problems. First, the skeleton at the ends of the channel mask no longer traces the centerline, as it must intersect the corners of the object (channel mask) being skeletonized (Figure 6d). This is overcome by padding the channel mask image with mirrored versions of itself, providing a channel with smooth transitions beyond the boundaries of original mask. The centerline is obtained from the padded image and then cropped to remove the boundary effect of skeletonization. The second problem of skeletonization is the presence of unwanted spurs that must be removed (Figure 6d). Rather than removing spurs individually [e.g.,Fisher et al., 2013], the centerline is found as the shortest path along the skeleton between its endpoints. The coordinates of the shortest path are arranged from upstream to downstream and returned as a two-column vector. The centerline is resolved at single-pixel resolution, so centerline node spacing depends on the resolution of the input mask. Centerlines may be computed for both single-threaded and multithreaded channels, but for the latter the centerline of the holes-filled channel mask will be returned.

Banklines are extracted from a binary channel mask by taking advantage of MATLAB’s e fficient image processing tools. The banklines_from_maskfunction requires inputs of a channel mask and its exit sides; if the input mask contains a multithreaded channel, only the outermost banklines will be returned. The mask image is first cropped such that the ends of the river intersect the edge of the image, and any holes within the mask that border the image boundary are filled (Figures 6f and 6g). The perimeter of this image is found and separated into left and right banks by removing all pixels at the image boundaries except the bankline pixels (two for each exit side). Bankline coordinates are evaluated to determine the left and right banks (looking down- stream) and arranged in an upstream-to-downstream order.

Quoted from: High spatiotemporal resolution of river planform dynamics from Landsat: The RivMAP toolbox and results from the Ucayali River






Initial contribute : 2021-09-15



University of Minnesota
Is authorship not correct? Feed back


Last modifier
Yihan Zhang
Last modify time
Modify times
View History

QR Code


{{curRelation.author.join('; ')}}



Drop the file here, orclick to upload.
Select From My Space
+ add


Cancel Submit
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
{{htmlJSON.Localizations}} + {{htmlJSON.Add}}
{{ item.label }} {{ item.value }}
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
名称 别名 {{tag}} +
系列名 版本号 目的 修改内容 创建/修改日期 作者
摘要 详细描述
{{tag}} + 添加关键字
* 时间参考系
* 空间参考系类型 * 空间参考系名称

起始日期 终止日期 进展 开发者
* 是否开源 * 访问方式 * 使用方式 开源协议 * 传输方式 * 获取地址 * 发布日期 * 发布者

编号 目的 修改内容 创建/修改日期 作者

时间分辨率 时间尺度 时间步长 时间范围 空间维度 格网类型 空间分辨率 空间尺度 空间范围
{{tag}} +
* 类型

* 名称 * 描述
示例描述 * 名称 * 类型 * 值/链接 上传

{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
Title Author Date Journal Volume(Issue) Pages Links Doi Operation
{{htmlJSON.Cancel}} {{htmlJSON.Submit}}
{{htmlJSON.Add}} {{htmlJSON.Cancel}}


Authors:  {{articleUploading.authors[0]}}, {{articleUploading.authors[1]}}, {{articleUploading.authors[2]}}, et al.

Journal:   {{articleUploading.journal}}

Date:   {{articleUploading.date}}

Page range:   {{articleUploading.pageRange}}

Link:   {{articleUploading.link}}

DOI:   {{articleUploading.doi}}

Yes, this is it Cancel

The article {{articleUploading.title}} has been uploaded yet.

{{htmlJSON.Cancel}} {{htmlJSON.Confirm}}